我有一个应用程序解析来自我的网站空间的数据。但是如果您对我的应用程序进行逆向工程,任何人都可以找出我存储数据的位置。如何防止他人访问我的XML文件。 (我将所有的文件路径存储在字符串文件中,所以proguard不会解决它),有没有办法将数据保存在工作区中,只有应用程序可以访问它?还是有提供这种功能的服务? (注:我没有与网络开发的经验)如何保护XML文件?
感谢提前:)
我有一个应用程序解析来自我的网站空间的数据。但是如果您对我的应用程序进行逆向工程,任何人都可以找出我存储数据的位置。如何防止他人访问我的XML文件。 (我将所有的文件路径存储在字符串文件中,所以proguard不会解决它),有没有办法将数据保存在工作区中,只有应用程序可以访问它?还是有提供这种功能的服务? (注:我没有与网络开发的经验)如何保护XML文件?
感谢提前:)
有没有真正一个简单的方法来做到这一点。有几件事你可以做,比如密码保护你的目录(但是密码必须存储在apk中)或者使用API密钥(但是,你需要将它存储在apk中)。
一种选择是通过某种复杂的算法动态构建字符串路径,从而使proguard迷惑有用。然而,在一天结束的时候,你仍然容易受到数据包检查(假设你没有使用HTTPS)。您还可以在应用程序上运行并在服务器上运行的共享密钥生成器(基本上是一种生成基于时间的看似随机的密钥的算法)。这些值将在运行时进行比较,如果它们匹配,则会提供该文件。再一次地,proguard混淆会使得很难弄清算法是如何工作的。
另一种选择是利用Android的私人空间。如果电话扎根,你会受到影响,但这会有所帮助。基本上,下面这个算法:
您可以加密它们并将加密密钥保留在字符串文件之外吗?让它变得非常困难?你所要问的是最难解决的问题之一:“我有一件事,每个人都知道它是如何工作的,我怎样才能限制对它使用的资源的访问” – Wug