有关 app 内置购买的书籍或者教程推荐?

2015-10-02 14:29:19 +08:00
 strom001
在这个地方拖了好几天了。。
主要是解析 receipt 和openssl不会,asn1c产生了一堆.c .h文件,不会用……
2641 次点击
所在节点    iDev
8 条回复
zwo
2015-10-02 15:39:54 +08:00
不需要自己解析或者 openssl 。把 BASE64 的 receipt 和自己设置的密码通过 https 发到苹果验证,返回的是可读的 JSON 。建议把 receipt 检验放在自己的服务器上做。
strom001
2015-10-02 16:50:21 +08:00
@zwo 没有服务器,我就想实现一个解锁功能,完全不需要本地验证吗?
zwo
2015-10-02 17:50:03 +08:00
@strom001 可以本地做验证,但是意义不大,现在的越狱内购插件太容易搞掂本地做的验证,你本地对 receipt 做验证,但是 receipt 有可能是插件偷了其它已购买人的。通过服务器可以验证这个 receipt 是否唯一存在,即没被盗用。 iOS6 刚出来的时候,你所说的做法还是很流行的,代码在 github 上就有。
strom001
2015-10-02 19:11:05 +08:00
@zwo 谢谢。那这个 receipt 可以不用吗? For non-consumable products and auto-renewable subscriptions in iOS 7 and later, use the app receipt as your persistent record. 用 user defaults ?
zwo
2015-10-02 19:30:01 +08:00
@strom001 这个说的是 iOS7 style receipt ,相对于 iOS6 style receipt 通过 transaction 获得,其实两者差别不大,只不过前者不需要在交易中才获得,而是随时可以通过 NSBundle 来得到。这两个都是 receipt 的获取方法,都无法解决内购伪造的问题。如果你选用后者,确实不用再用 user defaults 来存已购买记录。如果你真的是很在意内购保护的话,不妨申请个免费的云空间,放个 PHP 脚本做回执校验。
strom001
2015-10-02 19:46:06 +08:00
@zwo 不是在意内购保护,我以为这是必需的……现在我的 app 购买项目是 Ready to Submit ,检查了 ID 也没问题,不知道为何总是没有这个产品。。
strom001
2015-10-02 20:12:57 +08:00
原来是银行税务没添全。。。苹果效率好高啊,五分钟就审核通过了。。。
strom001
2015-10-02 20:13:28 +08:00
@zwo 现在能请求到产品了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/225230

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX