代码之家  ›  专栏  ›  技术社区  ›  Dan Lew

你如何制作一个Android应用程序的评论副本?

  •  6
  • Dan Lew  · 技术社区  · 15 年前

    我被要求提供一些我写的Android应用程序的评论副本,这很好,但我不愿意把完整的应用程序分发给任何人。我想做一个时间有限的版本(工作大约两个星期,然后放弃鬼魂)。

    最简单的方法是什么?我自己还没有测试过,但我认为理论上,如果有人使用一个密钥库构建应用程序,而这个密钥库将在两周内到期,那么它可能会工作。是正确的吗,还是我必须在应用程序中放置一行代码,如果您试图在一个设定的日期之后引导它,它就会关闭?

    8 回复  |  直到 15 年前
        1
  •  4
  •   Christopher Orr    15 年前

    安装应用程序后,不会检查密钥库;只有在安装时才验证日期。

    我想你必须输入自己的时间限制代码。不过,如果你真的想变得多疑,你可以考虑用户可以改变他们设备的时钟。

    或者,您可以进行在线检查(根据服务器上的时间),或者让您分发的每个APK都嵌入一个单独的令牌,该令牌将根据您的服务器进行验证。

        2
  •  3
  •   Drakosha    15 年前

    我有一个最简单的建议,如果审查者购买了申请,而你退款怎么办?

        3
  •  2
  •   Andres Martín    9 年前

    我只是想出了一个很酷的方法。 你制作了一个测试版的应用程序,你可以定义测试人员组,你只需要那个人的电子邮件地址,或者他们可以请求访问的G+社区,然后你将他们添加到测试程序中。

        4
  •  1
  •   jspcal    15 年前

    最简单的方法是硬编码一个结束日期,然后不再运行。如果用户改变他们的系统时间,这是可以避免的,但这是一种麻烦的经历。

    否则,您可以让您的应用程序通过HTTP连接到您的服务器,定期检查许可证,但这需要做更多的工作。

        5
  •  1
  •   Ben Gotow Dmitry Nogin    15 年前

    这听起来是个好主意。你可能会想让应用程序的手机回到家里,并用服务器验证已经过了一定的时间。用户可以随时删除手机上的首选项文件,或者卸载并重新安装应用程序以绕过电话限制。

    我相信keystore方法也可以工作,但我不确定它们在Android中是如何工作的。

    请在您完成时将此项目设置为开放源代码项目-我认为这对很多人都有用!

        6
  •  1
  •   David Webb    15 年前

    你可以使用 TelephonyManager.getDeviceId() 并创建一个只在审阅者电话上运行的应用程序的构建。

    您可以将其硬编码到应用程序中,也可以根据您的服务器对每个设备ID的存储权限进行电话检查。在后一种情况下,您可以让应用程序在找不到许可证时显示设备ID;审阅者会告诉您这一点,然后将其输入数据库。

        7
  •  0
  •   fupsduck    15 年前

    根据谷歌的说法:“如果你打算在Android市场上发布你的应用程序,你用来签署应用程序的密钥的有效期必须在2033年10月22日之后结束。市场服务器强制执行此要求,以确保用户可以在新版本可用时无缝升级市场应用程序。”

    我们对DeveloperChallenge II条目所做的是,当我们到达到期日期时,我们处理的任何新数据都会被到期警告替换。因此,应用程序使用现有数据,但不使用用户在到期后输入的任何新数据。由于我们的应用程序处理了文本消息,因此设置时钟对于用户来说是一个不切实际的长期解决方案,以克服过期问题。

        8
  •  0
  •   Austyn Mahoney Janak    15 年前

    根据您向审阅者提供的应用程序类型,您可能还有其他选择。

    你像很多共享软件一样编写代码,只让应用程序运行这么多次。这方面的代码很容易实现。当然,审阅者可以删除数据,但不太容易。我想他们可能花几美元也不会有那么大的麻烦。