应用内订阅 - 可转让性

发布于 2024-10-12 12:33:44 字数 209 浏览 7 评论 0原文

Apple 拒绝了我们的一款应用,用户可以通过订阅购买内容(InApp 产品类型为订阅)。问题是,我们需要,也是因为苹果的要求,这些订阅可以在设备之间转移。合乎逻辑且最安全的解决方案是将其链接到用户必须创建的用户帐户。

但这就是苹果拒绝这款应用的原因。他们告诉我们,购买订阅不需要注册,只能是可选的。所以问题是,如果没有其他好的解决方案,既有意义、安全又让用户感到舒适,如何解决这个问题?

Apple has rejected one of our apps, where the user can purchase content through subscriptions (InApp product type is subscription). The problem is that we need to, also because of Apple requiring it, these subscriptions to be transferable between devices. The logical and also the most secure solution would be to link it to a user account, that the user will have to create.

But this was the reason why apple rejected this app. They have told us that for purchasing of subscriptions a registration can not be required, can be only optional. So the question is how to solve this if there is no other nice solution that would make sense, be secure and still comfortable for the user?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

深海里的那抹蓝 2024-10-19 12:33:44

由于用户注册是可选,这意味着,如果用户选择不注册,则如果他们想为每台设备购买单独的订阅,则可以选择注册。只要您为用户提供了同步订阅的明确选项,Apple 就可以接受。

因此,您无需寻找其他方法来同步订阅。只保留现有的,但将其作为可选的。

为了进一步阅读,以下是我从一位苹果评论员那里收到的有关我被拒绝的消息的摘录:

以某种方式修改您的应用程序是适当的
使您能够向单个拥有的所有设备提供订阅
用户,例如可选的用户注册。如果您选择使用
用户注册以满足此要求,请记住
要求用户注册是不合适的。此类用户
注册必须是可选的。这样做是合适的
让用户明白只有注册后才能访问
来自所有 iOS 设备的内容;并为他们提供一种方式
如果他们希望访问其他设备上的内容,请稍后注册
未来的 iOS 设备。

Because the user registration is optional it means that, if the user opts not to register, than it's on them if they want to buy a separate subscription for each one of their devices. Apple is fine with this as long as you've given the user a clear option to sync their subscription.

So you don't need to search for some other method to sync subscriptions. Just stay with what you have but make it optional.

For further reading, here is an excerpt from a message I received from an Apple reviewer regarding my rejection:

It would be appropriate to modify your app in a manner that will
enable you to deliver subscriptions to all devices owned by a single
user, such as with an optional user registration. If you choose to use
user registration to meet this requirement, please keep in mind that
it is not appropriate to require user registration. Such user
registration must be made optional. It would be appropriate to make it
clear to the user that only by registering will they be able to access
the content from all of their iOS devices; and to provide them a way
to register later, if they wish to access the content on their other
iOS devices at a future time.

树深时见影 2024-10-19 12:33:44

好吧,那就让它成为可选的吧!只需以某种方式让您的用户知道未注册用户无法使用可转让性。
还可以考虑使用连接的 Apple 本身进行某种静默注册

Well, make it optional then! Just let somehow your users know that the transferability is not available to unregistered users.
Also consider making some sort of a silent registration using per se the connected Apple

偏爱自由 2024-10-19 12:33:44

为此使用设备标识符怎么样?当用户需要转移它时,他们可以创建新帐户并将这些购买转移到新帐户吗?

What about using the device identifier for this and when the user needs to transfer it, they can create new account and transfer these purchases to the new account?

萌逼全场 2024-10-19 12:33:44

男孩,这让我有点害怕。我有一个同时包含非消耗品和订阅的应用程序。订阅后,用户可以访问云帐户,在那里他们可以存储在 iPhone 上捕获的内容。在订阅创建过程中,他们在线创建一个帐户。他们注册的目的不是为了购买订阅,而是为了后续使用云存储。

这听起来像是苹果的问题吗?我不想走到这一步,发现我的整个商业模式因为他们的政策而被搞砸了。

Boy, this has me running a little scared. I have an app that has both non-consumables and subscriptions. The subscriptions give user access to a cloud account where they can store content captured on their iPhone. During the subscription creation process, they create an account online. It is not for the purpose of purchasing the subscription that they register, but for the subsequent use of the cloud storage.

Does this sound like it could be a problem with Apple? I'd hate to have come this far and find my entire business model is screwed because of their policies.

纸短情长 2024-10-19 12:33:44

在我看来,这确实是苹果的一个设计错误。

他们应该做的事情如下:

要么
使 -restoreCompletedTransactions 返回用户过去的所有交易,无论类型如何,并让应用正确处理它们(对于订阅:检查 originalTransactiontransactionDate)

SKPaymentTransaction 添加一个属性,该属性唯一标识购买用户(不会泄露其个人信息),然后可以存储在应用服务器的审核日志中。

幸运的是,他们认识到了自己的方式错误,并尝试使用新的自动续订订阅来纠正它们:事实上,在调用 -restoreCompletedTransactions 时,这些内容已包含在内,这也意味着服务器上的审核日志不会被删除。不再需要了。

This, in my opinion, is really a design mistake on Apple’s part.

What they should have done is as follows:

Either
Make -restoreCompletedTransactions return all of the user’s past transactions no matter the type and let the app handle them correctly (for subscriptions: check the originalTransaction’s transactionDate)
or
Add a property to SKPaymentTransaction which uniquely identifies the purchasing user (without giving away her personal information) and may then be stored on the app’s server’s audit log.

Fortunately, they recognized the error of their ways and tried to rectify them with the new auto-renewable subscriptions: these are, in fact, included when calling -restoreCompletedTransactions which also means audit logs on the servers aren’t necessary anymore.

夜司空 2024-10-19 12:33:44

应用内购买不与设备关联,而是与 iTunes 帐户关联。这样您就不需要为此单独注册。用户唯一困惑的问题是,他必须在第二台设备上单击“购买订阅”。然后他会收到消息“此订阅是免费的,因为您已经购买了”。类似的方法,就像在 AppStore 上一样 - 如果您想从 AppStore 重新安装您已经拥有的应用程序,您不会在 AppStore 应用程序列表中看到它 - 您会在那里看到价格标签,在选择“购买”后,您会看到“您可以免费使用”消息。

金德拉

InApp purchase is not linked with device, but with iTunes account. So that you don't need separate registration for this. The only confusing issue for user is, that he has to click on "buy subscription" on the second device. Then he will get message "this subscription is for free, because you already bought it". Similar approach, as on AppStore - if you want to reinstall app from AppStore, that you already have, you don't see it in AppStore Apps listing - you see price tag there and after you choose "purchase", you will get that "you have it for free" message.

Jindra

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文