0

我有适用于偏执狂用户的应用程序,这些用户曾经将敏感数据存储在加密数据库中。其中一项要求是应用程序不应具有使用 IP 连接的任何权限。一切都很好,直到有一天我决定将过时的复制保护系统替换为新的基于LVL的系统。应用程序仍然没有使用互联网的权限,但无论如何它应该通过 LVL 服务连接到 Android Market 并检查许可证的有效性。当然我正在缓存许可证等等,这样应用程序只检查一次许可证 - 在第一次运行时。但是我仍然无法成功地解释我的用户(偏执狂!)为什么设备必须启用 GPRS/wi-fi 才能检查许可证的有效性。它'

是否可以在没有 gprs/wi-fi 连接的情况下以某种方式检查许可证?
我的意思是可能有办法使用短信进行检查?

4

3 回答 3

2

如果“GPRS”是指蜂窝数据……那么不,这是不可能的。Android Market 是一项 Internet 服务,许可检查需要 IP 连接。没有办法解决这个问题。

(来源:我是 Android LVL 的作者之一。)

于 2011-12-28T20:17:16.217 回答
1

一种可能的方法是构建两个应用程序的复制保护方案。您的真实应用程序(带有敏感数据的应用程序)会检查手机上是否存在另一个应用程序。辅助应用程序不包含任何敏感数据,但需要 IP 连接才能使用 LVL。

显然,对第二个应用程序包的存在进行空白检查是不够的。两个应用程序通信的实际机制应该更复杂一些。一种可能的方法是使用 AccountManager 并创建一个帐户,该帐户保留由第二个应用程序创建的令牌,第一个应用程序验证该令牌。第二个应用程序只有在通过 LVL 成功验证自身后才会创建该令牌。

然而,围绕这一点的用户体验远非理想。它将要求用户下载第二个应用程序,并至少运行一次。尽管如此,它将在许可机制和敏感数据应用程序之间提供足够的分离,它可能会减轻用户的担忧。

于 2011-12-28T20:25:09.460 回答
0

您可以考虑完全移除 LVL。这导致:
- 满意的客户。您的应用程序将在这个极其敏感的主题方面拥有无可挑剔的记录。
- 因盗版而失去销售。你的应用已经被破解了吗?你可能不会损失那么多钱。由于对您的应用程序的信心增加,您甚至可能会产生更多销售额。

我并不是说您应该删除 LVL 检查,但也许可以考虑一下。由于您的应用程序的核心是关于安全性,我认为您应该消除对它的怀疑。你的客户会为此给你另一颗星。

于 2012-02-25T18:20:58.083 回答