首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >android免费编程技术和代码

android免费编程技术和代码
EN

Stack Overflow用户
提问于 2014-03-17 03:08:31
回答 1查看 527关注 0票数 3

我正在评估使用freemium模型构建和销售Android应用程序的不同方式。我想以一种或多种方式限制应用程序的功能,以鼓励购买高级版本。

是否有经过证明的、安全的编码技术来限制功能,例如:

1)每天的最大用途数,

2)每天(或其他时间段)调用密钥方法的最大次数,

3) app在使用一段时间(如1个月)后被禁用,不能通过简单的卸载/重新安装来规避。

->一种思想是散列存储在app或支持文件(例如资源、清单)中的值,该值跟踪使用情况,不能简单地被覆盖以规避限制。

->更复杂的方法是在web服务上注册安装,然后让web服务启用/禁用基于跟踪数据的操作,但是,如果web服务崩溃,这可能会禁用此功能(例如,默认操作将允许应用程序在服务不可用时运行)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-17 04:41:15

数字1和2可以很容易地完成,但是如果用户更改设备上的系统时间(hello Candy Crush),则可以绕过。为了防止这种情况发生,您需要注册才能接收ACTION_TIME_CHANGED,也许还需要接收ACTION_TIMEZONE_CHANGED,并想出相应的反应。或者,您可以从外部源获得时间,但这将增加您的应用程序的网络需求。

当一个应用程序被卸载时,它的所有内部文件都会被删除,所以第三部分的第一部分就不能工作了。您可以将该标志文件放置在外部存储中,但是一个最不精明的用户可以很容易地找到和删除它,除非您对名称和权限很狡猾。但这并不是真正的公平,因为在用户决定不再需要你的应用程序后很久,这个文件就会存在。唯一可靠的方式来处理3号和让它生存恢复是按照你的建议,并使用某种基于网络的注册过程。

更好的方法可能是使用谷歌玩授权游戏。它允许先试再买和其他方法。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22446277

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档