禁用从已安装的Android应用程序中获取apk文件

时间:2013-10-08 09:21:28

标签: java android google-play

通常即使安装在设备中,也可以获取Android应用程序的.apk文件。但我可以找到一些应用程序,这些应用程序可以防止它们使用.apk文件。

由于也可以从.apk文件中提取代码,我认为开发人员代码并不安全。谁能告诉我如何防止第三方获取我的Android应用程序的.apk文件?

提前致谢.. :))

2 个答案:

答案 0 :(得分:0)

至于无法获取APK的可能性,我认为你不能真正阻止它,因为它最终只是位于内部存储器中某个位置的文件。只要用户有足够的权限,他就可以提取它。

保护代码。有几个级别的保护,但最终,你无法阻止它 如果你什么都不做,代码的逆向工程非常简单。 有几种工具可以获得某种程度的安全性。 例如,ProGuard,这是Google的工具,已在大多数Android IDE中内置。

代码保护的优秀帖子: How to avoid reverse engineering of an APK file?

答案 1 :(得分:0)

我正在调查这个问题,并认为我会在这里更新。出于安全原因,建议您在Android清单文件中设置它:

android:allowBackup="false"

因此,如果某人尝试进行完整的adb系统备份或使用它来备份您的应用程序,它就不会进入备份,从而阻止他们从那里提取apk。我对此进行了测试,但它确实有效,即adb备份不允许备份我的示例应用。

然后我安装了一个用于进行应用程序备份的应用程序(ES文件浏览器),不幸的是,它允许我的示例应用程序使用.apk备份,其中禁用了备份。这是一个无根的设备。这似乎表明在清单中设置此属性并不会阻止其他应用程序进行备份。

所以剩下的选择很少:

  1. 使用proguard和其他最佳做法,难以对您的应用进行反向工程。
  2. 使用Google Play提供的应用许可密钥,以避免盗版您的应用。