【问题标题】:Mobile app install for a fixed time固定时间安装移动应用程序
【发布时间】:2012-09-11 15:21:30
【问题描述】:

我不知道这是否可能。我想知道用户如何在固定时间(可能是 1 个月)安装我的应用程序(基于 android、iPhone、phonegap)。 1 个月后,用户将无法运行该应用程序。然后如果他卸载并在接下来的 1 个月内再次尝试安装,这将阻止他安装。

有没有可能?如果可能怎么做?

-阿瑞芬

【问题讨论】:

    标签: android installation


    【解决方案1】:

    没有 100% 安全的方式来做你想做的事,但你可以这样做:

    • 获取安装应用程序的设备的唯一标识符。有 获取此标识符的方法并不完美,但这里有一些选项: Is there a unique Android device ID?

    • 让您的应用连接到您的服务器并注册该标识符

    • 您的服务器可以返回您的应用是否已经安装在那里,因此应用可以采取相应的行动。

    副作用是您的应用在没有 Internet 连接的情况下无法运行,以防止用户断开与 Internet 的连接以避免这种控制。

    【讨论】:

    • thnaks jorge,我已经看到了获取设备唯一 ID 的链接。由于我是移动平台的新手,您认为这个想法适用于可用的应用程序还是很少见的应用程序?
    • 我认为这种解决方案根本不常见。为什么需要这个限制?如果我可以问的话。
    • 客户希望用户在使用 1 个月的免费版本后购买付费版本。 1个月后,他将无法使用,如果他尝试重新安装,他将无法这样做。
    • 要达到这种要求,最好的解决方案是什么?
    • 我认为 Google 的许可服务是最好的选择:developer.android.com/guide/google/play/licensing/index.html
    【解决方案2】:

    您还可以在创建密钥工具时指定有效性选项。导出应用程序的 .apk 文件时使用 keytool。

    或者

    您可以在 Shared Preferences 中保存应用程序的安装日期——即首次安装应用程序的时间。然后检查从当前日期和保存日期开始的天数,每次启动应用程序时,只有在限制范围内才允许访问。

    解决了上网问题。

    【讨论】:

    • 第一个选项会阻止所有用户在证书过期后使用该应用程序,即使是购买该应用程序的用户。如果用户删除应用数据或卸载/重新安装应用,第二个选项将不起作用。
    猜你喜欢
    • 1970-01-01
    • 2020-11-10
    • 1970-01-01
    • 1970-01-01
    • 2011-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多