2013-10-08 100 views
1

通常可以将Android应用程序的.apk文件安装到设备中。但是我可以找到一些应用程序,这些应用程序可以避免使用他们的.apk文件。从安装的Android应用程序中禁用apk文件

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

在此先感谢.. :)

回答

0

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

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

一个优秀的SO张贴代码保护: How to avoid reverse engineering of an APK file?

+0

感谢您的回复Lior Ohana。但我可以找到一些处于锁定状态的应用程序。例如Instagram,Skype,Viber等。不可能对这些应用程序进行备份。我怎样才能实现这种锁定? – Anu

+0

NP。我知道某些应用程序不允许用于某些备份/导出应用程序。我的意思是,最终,在根植设备上,您可以打开一个shell控制台并抓取APK。 如果您所谈论的只是对您描述的应用程序提供最低程度的保护而非可能。如果我能找到任何东西,我会做一些调查和更新。 –

0

我研究这个问题,我想我会在这里更新。建议为您设置这个在您的Android清单文件的安全性方面的原因:

android:allowBackup="false"

所以,如果有人试图做一个全面的adb系统备份或使用它来备份你的应用程序尤其是它赢得了”进来备份,从而阻止他们从那里提取apk。我测试了这一点,它的工作原理,即adb备份不允许备份我的示例应用程序。

然后,我安装了一个应用程序备份应用程序(ES文件资源管理器),不幸的是,它允许我的样例应用程序采用.apk备份,其中禁用了备份。这是一个无根的设备。这似乎表明,在清单中设置此属性并不妨碍其他应用程序进行备份。

因此,有几个选项左:

  1. 搭配使用ProGuard和其他最佳实践,使其难以扭转工程师您的应用程序。
  2. 使用Google Play提供的应用程序许可密钥来避免应用程序的盗版。
+0

'android:allowBackups =“false”'不会阻止某人复制您的apk,它只会通过阻止用户数据被备份而破坏用户数据。 – pushcx

+0

'android:allowBackup'只是说Android来自动备份应用程序数据或不。请参阅此处了解更多信息:[https://developer.android.com/guide/topics/data/autobackup.html#EnablingAutoBackup](https://developer.android。com/guide/topics/data/autobackup.html#EnablingAutoBackup)@raghum – Hossein

相关问题