StoreKit:我可以为用户提供他选择的通常需要付费的产品的免费下载吗?
我很快就必须实现 StoreKit 功能,我想知道...... 有没有办法同时向用户免费提供一次产品,例如作为第一次使用该应用程序的礼物?
在我的特殊场景中,我将在我的教育应用程序中提供多种产品,如果用户有兴趣继续使用该应用程序学习,则需要一次又一次地购买这些产品。
但我希望用户免费拥有的第一个产品,应该由他选择选择哪个。所以一般所有产品都应该有价格,但首次下载是免费的。
我希望它登录到我的服务器上,以便我可以重新识别他,因此(A)他无法删除该应用程序,重新安装和下载另一个免费产品,(B)所以他也可以在任何其他网站上获得该产品他的设备。
我也愿意接受变通办法,比如也许获得类似于苹果 ID 之类的东西,以便能够将其存储在服务器上。我知道我也可以使用 [[UIDevice currentDevice] uniqueIdentifier],但我希望用户在他的所有设备上拥有第一个免费产品,而且只有一个。
有没有办法得到(A)和(B)?
I'll soon have to implement the StoreKit functionality and I was wondering...
is there a way to also offer a product for free to a user once, like as a gift for using the app for the first time ?
In my special scenario I'll offer several products in my educational app, which the user will need to buy time by time, if he is interested in continuing to learn with the app.
But the first product I want the user to have for free and it should be his choice which one he takes. So generally all products should have a price, but the first download shall be free.
And I want this to get logged on my server so I can reidentify him, so (A) he can't delete the app, reinstall and download yet another free product and (B) so he will also get the products on any other of his devices.
I'm also open to workarounds, like maybe get something similar to the apple id or so, to be able to store it on the server. I know that I could also use the [[UIDevice currentDevice] uniqueIdentifier], but I want the user to have this first free product on all his devices, and ONLY ONE.
Is there a way to get (A) and (B)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Apple 的应用内购买基础设施(以及扩展的 StoreKit)不支持免费内容。
但正如您所猜测的那样,没有什么可以阻止您通过自己的机制提供免费内容。您必须自己完成所有跟踪,记住某处服务器上的设备 ID,并注意该设备!=用户,因此会错过一些边缘情况。
您根本无法访问(iTunes)用户数据,因此您可能无法保证跨多个设备的“唯一一次”,除非您的应用程序具有每个用户已经唯一的关联后端服务帐户。
(为此构建基础设施之前,您应该仔细检查有关此内容的开发者协议/合同。您在这里并没有规避苹果的收入来源,这很好,但您所谈论的内容可能很不寻常,足以引发旗帜如果没有其他的话,就体验一致性而言,与他们合作。)
Apple's In-App Purchase infrastructure (and by extension, StoreKit) does not support free content.
But there's nothing stopping you from providing free content via your own mechanisms, as you surmise. You would have to do all the tracking yourself in terms of remembering device IDs on a server somewhere, and noting that device != user, so would miss some edge cases.
You don't get access to (iTunes) user data at all, so you probably can't guarantee the "only once" across multiple devices, unless your app has an associated backend service account that is already unique per user.
(Before building infrastructure for this, you should double-check the developer agreement/contracts on this stuff. You're not circumventing Apple's revenue stream here, which is good, but what you're talking about may be unusual enough to raise a flag with them in terms of experience consistency if nothing else.)