【问题标题】:IOS In-App Purchase Auto-Renewal SubscriptionIOS应用内购买自动续订订阅
【发布时间】:2016-01-25 02:30:29
【问题描述】:

我正在开发可免费下载的 IOS 应用程序,并为内部额外的月度服务添加了应用程序内购买自动续订订阅的概念,但在实施和测试期间我面临很多问题,我在这里代表案例,我不知道我的方法正确与否

案例 1: 从使用一个苹果 id 的一台设备上,我可以为两个不同的应用程序用户订阅服务吗?如果可以,每月收费两次?如果我想为一个用户取消订阅服务,那么我可以从管理中控制吗?

案例 2: 我有两台 IOS 设备,第一台设备有两个不同的苹果 ID 我注册了应用程序并在 2 个月后订阅了应用程序的服务 我的第一台设备出现问题,所以在第二台设备上我下载了应用程序并唱歌,所以我当前月份的订阅将是有效或无效,如果有效则下一次续订从第一个设备apple id或第二个设备apple id开始,如果无效则意味着用户在订阅期间不能更换他的手机。

案例 3: 我有两台 IOS 设备,第一台设备具有相同的苹果 ID 我注册了应用程序并在 2 个月后订阅了应用程序的服务 我的第一台设备出现问题,所以在第二台设备上我下载了应用程序并唱歌,所以我当前月份的订阅将是有效的还是无效?

如何测试以上所有情况??

【问题讨论】:

  • 订阅与 Apple ID 相关联,因此在第 1 种情况下,只会对单个订阅收费。您需要有一个“恢复购买”按钮,以使用户能够在另一台设备上激活他们的订阅。这涵盖了案例 3​​,也应涵盖案例 2 - 用户在第二台设备上恢复购买时应使用已订阅的 Apple ID 登录

标签: ios objective-c iphone in-app-purchase subscription


【解决方案1】:

我想关于我的问题,有人可以验证一下吗:
简单流程:
1. 使用 User1 (user1@abc.com) 登录应用程序。
2. 使用 Apple-ID (user1@abc.com) 购买/购买订阅。
3.在成功购买商店交易收据存储在两个位置,一个在本地电话和第二个后端服务器数据库,然后在服务器用户标记为付费用户。
4. 在后端服务器上,cronjob 将运行并检查任何订阅是否已过期,如果是,则检查是否完成苹果续订,如果续订完成,则用户标志保持已付费,否则降级为免费用户。
5. 现在在每次登录时,我们将检查本地电话回执,存储服务器回执和登录用户,一切匹配用户继续作为付费用户,如果用户更改他的手机,因此找不到本地电话回执,那么他必须使用选项购买恢复。

案例 1:我们可以限制用户在应用用户购买时使用一个 Apple id

1. 在同一部手机上,我使用其他用户 (user2@abc.com) 登录并尝试购买具有相同苹果 ID 的服务。
1.1 如果我们在同一部手机上找到与 user1 的先前交易收据,那么我们将不允许 user2 使用相同的 Apple id 购买,并要求使用另一个 Apple id。
1.2 在同一部手机上,用户删除应用程序并再次安装,而不是错过所有本地收据,而不是我们必须检查与后端服务器的交易并发现与 user1 的交易,因此我们将不允许 user2 使用相同的 Apple id 购买并要求使用另一个苹果 ID。


案例2:
2.1 如果用户更换了不同apple id 的手机,user1 仍然被认为是订阅用户,因为自动续订继续使用以前的apple id 并且我们的服务器在后台验证。
2.2 如果用户从第一个 Apple id 自动续订而不是我们的后端服务器认为是免费用户,那么用户必须在第二部手机上从新的 Apple id 进行新购买。

案例3:
如果用户有多部手机具有相同的apple id,他只能在一部手机上与一个应用用户订阅服务,该用户可以在任何一部手机上登录,视为订阅用户。

【讨论】:

  • 嗨 Ritesh。你发现你的这个流程正确吗?我和你在同一条船上。
猜你喜欢
  • 2018-06-01
  • 2017-10-29
  • 1970-01-01
  • 2015-07-25
  • 1970-01-01
  • 2016-10-23
  • 2014-02-20
  • 2011-06-29
  • 2018-02-17
相关资源
最近更新 更多