8

我在 Android 中有 PhoneGap 应用程序。现在我准备发布它,但我想保护应用程序免受脚本小子的眼睛。我首先认为这是不可能的,然后我在市场上发布应用程序时发现了“复制保护”功能。所以我很兴奋,但是当我打开它时,它实际上并没有什么作用。

我可以毫无问题地在有根手机上安装该应用程序,我可以将其复制到 SD 卡上并查看所有来源。我认为这个“复制保护”功能将不允许拥有根手机的人安装该应用程序。还是我错过了什么?

有什么方法可以让人们在我的应用程序中看到我所有的 HTML 和 JS 源代码,如果根本不禁用它,至少会变得困难吗?

4

4 回答 4

5

Google 已弃用复制保护功能。不要使用它。

  1. 使用ProGuard混淆您的代码。

  2. 加密您的资产并在您阅读它们时解密它们。

  3. 如果您有付费应用,请使用许可机制。

于 2011-05-27T19:37:34.930 回答
3

我发现的最佳组合是高级模式下的DojoToolkit和 Closure Compiler。

高级模式下的闭包使得 JavaScript 代码几乎不可能进行逆向工程,即使在通过美化器之后也是如此。一旦您的 JavaScript 代码被混淆,无法识别并且无法进行逆向工程,您的 HTML 就不会泄露您的大部分秘密。

此链接用于在高级模式下将 Dojo Toolkit 与 Closure Compiler 一起用于移动应用程序:

http://dojo-toolkit.33424.n3.nabble.com/file/n2636749/Using_the_Dojo_Toolkit_with_the_Closure_Compiler.pdf?by-user=t

于 2011-05-28T11:57:55.037 回答
0

Android 市场的复制保护非常无用,以至于 Google 计划将其删除。

如果您希望难以查看您的嵌入式资源,您应该对它们进行加密。这不会让它变得不可能,只会变得更加困难。毕竟,您的应用程序必须可以访问解密密钥,并且您应该假设您的应用程序可以做的所有事情都可以被专门负责它的人观察到。

于 2011-05-27T19:39:00.373 回答
0

复制保护功能将逐步淘汰 IIRC。您需要改用应用程序许可服务。我前一阵子尝试过,它给出了一些错误的“未经许可”响应,但您可以应用缓存或忽略它给出的结果。

于 2011-05-27T19:39:23.027 回答