【问题标题】:Creating A time Bound Trial Version Of an Android App创建 Android 应用程序的限时试用版
【发布时间】:2012-05-05 14:19:13
【问题描述】:

我已经看到很多关于为 Android 应用程序创建有时间限制的试用版的线程,但似乎没有一个能满足我的目的。 几天前,我推出了我的应用程序的付费版本,现在我想提供试用版,我不想从任何方面削弱它。所以我想对试用版有时间限制。我为它创建了一个不同的包名称。早些时候我使用 LVL,现在我也使用相同的,除了我创建了新的许可证库并更改了 setValidityTimestamp(extras.get("VT")); 到 setValidityTimestamp(String.valueOf(System.currentTimeMillis() + (5* MILLIS_PER_MINUTE)));在 ServerManagedPolicy 中。

这样我就可以测试试用版是否工作 5 分钟,然后给我许可证错误。我在应用商店发布了它,下载了它,然后发现它仍然可以工作超过 5 分钟。现在我已经取消发布了。有人可以帮助我创建更好的时间限制应用程序,用户可以运行一周(比如说)。此外,他不应该能够卸载并重新安装它,然后再次永久使用它。我知道我是否可以将信息写入某个外部文件,但是可以再次从 sd 卡中删除该文件,并且可以使用户终身免费访问应用程序。

问候 潘卡伊

【问题讨论】:

    标签: android time-trial


    【解决方案1】:

    在 LVL 的当前功能以及用户对普通手机的控制程度范围内,如果没有服务器端组件,目前没有办法做到这一点。卸载您的应用程序后,所有痕迹(如您所指出的,您可能写入 SD 卡的文件除外,这些文件是用户可见的)都将被删除,因此检查卸载/重新安装的唯一方法是生成一个一致的、特定于设备的标识符,并与服务器组件核对,该组件要么拒绝重新安装,要么接受它作为新的计时试验。即使这也可能被专门的客户欺骗(取决于服务器端组件的行为),因此您需要设计您的软件,以便您的服务器端组件是流程的必要部分(即它不仅仅是许可证检查,它实际上是应用程序功能的一部分)。

    如果你想出一些可行的方法,我很想听听,但我会说你不走运。

    【讨论】:

    • 感谢大家在这里的意见。我决定在我的应用程序中添加水印。我的应用程序使用编辑文本视图,然后我用它通过电子邮件或短信等发送消息。是否有可能在每次发送时我可以放置一些水印。你知道怎么做吗?并且当消息被复制到电子邮件页面或短信发送窗口时,水印也会被复制。我不确定。
    • @user1376886 将其作为一个新问题发布,因为它与您的原始问题完全不同。
    【解决方案2】:

    @Femi 是对的,您需要一个服务器端组件才能始终工作。我倾向于只发布免费版本,而用户则以应用内购买的形式购买完整版本。 IAP 服务器是您的服务器端检查用户是否购买了升级。您可以在首次使用时存储首选项,以了解用户何时开始使用该应用程序。如果用户卸载并再次安装您的应用程序,他们会获得一个新的试用期,但这很烦人,很少有人会为了节省几美元而这样做。如果您在应用程序中添加一条消息,要求用户升级,或者在升级后删除广告,那么这是一个足够好的解决方案。

    【讨论】:

    • 另一种方法是,如果我可以限制试用用户每天只发送 2 封邮件和 10 条短信。我需要看看如何实现它,但这会是一个不错的选择吗?
    • 是的,听起来不错。总会有办法,但大多数用户不会这样做。如果您有一个屏幕显示“您今天发送了 10 条消息,要发送更多请升级”,用户将了解他们获得的价值并倾向于进行更多升级。
    猜你喜欢
    • 2011-04-17
    • 2012-10-17
    • 1970-01-01
    • 1970-01-01
    • 2023-01-21
    • 2012-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多