在SharedPreference中设置一个值来标记用户已购买此商品是否正常且安全?如果用户在SharedPreference中破解了这个值怎么办?或者我每次都需要连接IAP服务来检查用户是否可以使用它?
(1)使用Google Android IAP V3的最佳实践是什么?
(2)如果用户的设备没有安装Google Play,我可能想使用paypal进行支付,但如果我要求用户使用简单的paypal支付来获得许可证密钥,如何跟踪购买并为用户解锁功能?我不想使用任何其他计费SDK,如果用Paypal网页购买许可证,如何实现这一点?
发布于 2013-10-12 18:29:07
(1)使用Google Android IAP V3的最佳实践是什么?
-->官方文件说,只有支付交易将由google play本身处理,但在应用程序中,您必须设置您的业务逻辑如何在产品购买后处理UI集成和其他事情。你也可以使用应用程序中的购买v3。
(2)如果用户的设备没有安装Google Play,我可能想使用paypal进行支付,但如果我要求用户使用简单的paypal支付来获得许可证密钥,如何跟踪购买并为用户解锁功能?我不想使用任何其他计费SDK,如果用Paypal网页购买许可证,如何实现这一点?
-->您可以要求用户动态更新google play版本。谷歌开发人员文档显示,超过90%的设备使用2.2操作系统,并安装了Google play商店。我不能说任何关于贝宝交易的事情,因为我以前没有使用过它,但是在应用程序购买中使用v3是非常简单的实现和理解支付过程。
如何在应用程序中使用
有三种方法来管理应用程序的产品数据。
1) SharedPrefrence:您可以使用股票优先级值检查是否已购买。如果用户卸载应用程序,然后重新安装应用程序,那么您可以检查用户是否已购买,在此您得到的项目已经购买。而且您必须管理用户才能访问您的应用程序数据。
2)本地数据库:您也可以使用本地sqlite数据库来存储购买明细和购买状态。和上面一样,如果用户清除数据或卸载应用程序,然后再次请求购买项目,并检查用户是否购买了项目。
或
2)服务器数据库:如果你使用web服务器来存储用户数据,这是比上面更好的方式。在这种情况下,如果用户卸载应用程序或清除应用程序数据,您甚至不需要进行二次管理。
3)混淆:(与共享优先级相比最有效的方式)
编辑:
是否可以安全地在SharedPreference中设置一个值来标记用户已购买此项目?如果用户在SharedPreference中破解了这个值怎么办?或者我每次都需要连接IAP服务才能使用它?
当我在互联网上搜索时,我发现Nikolay Elenkov's答案如下:
如果你只是在共享偏好设置中保存一个标志,任何有根设备的用户都可以随意翻转标志,并被“订阅”,而不需要付费。所以你至少应该做一些模糊处理。这里有一个sample way可以做到这一点。此外,还有一个用于检查订阅状态的API,因此您应该定期检查以确保订阅有效。
更多信息请查看Nikolay Elenkov's answer
在应用程序购买或中,最好的计费方式是什么?
这取决于产品类型,
--> 在应用程序计费方面:是谷歌在应用程序计费方面的最佳选择,适用于包括可下载内容(如媒体文件或照片)、虚拟内容(如游戏关卡或药水)、高级服务和功能等在内的数字产品。
http://developer.android.com/google/play/billing/index.html
--> Paypal :是Paypal计费的最佳选择,
对于您想要共享的物理内容或产品。你不允许使用“应用内购买”销售实物商品或服务,因为通过这种方法购买的商品必须与使用它们的应用直接相关。
Purchase physical product from iPhone app without Apple in app purchase
希望能对你有所帮助。
发布于 2013-10-08 16:44:33
从文档中:
因为Google Play客户端现在在设备上本地缓存应用程序内计费信息,所以您可以使用版本3API来更频繁地查询此信息,例如通过getPurchases调用。与以前版本的API不同,许多版本3的API调用将通过缓存查找而不是通过到Google Play的网络连接来提供服务,这大大加快了API的响应时间。
这基本上意味着你每次都可以查看购买的内容,Play Store应用程序会立即做出响应。
发布于 2020-08-11 16:55:54
根据我的经验,我可以向你保证一件事。
**事实上,用布尔值来标明它是否溢价是不好的**。
在这一点上,如果他们想用手机的根来欺骗我,他们应该首先了解我的应用程序的代码是如何工作的,然后了解在哪里交互,因为如果只有共享的首选项改变,什么都不会改变,他们会被鞭打。
**这并不意味着高安全性,但至少安全级别更高,root不会那么容易获得奖励。还因为他们应该知道要在共享数据库中插入的确切代码是什么,并通过删除混淆来查找它们。老实说,我认为这对他们来说不值得。**
https://stackoverflow.com/questions/19242939
复制相似问题