我有一个解析来自我的网站空间的数据的应用程序。但如果您对我的App进行逆向工程,任何人都可以找到我存储数据的位置。如何防止他人访问我的XML文件。 (我将所有文件路径存储在Strings文件中,因此proguard无法解决它),有没有办法在工作区中保存数据,只有应用程序可以访问它?还是有提供这种功能的服务? (注意:我没有任何网络开发经验)
提前致谢:)
答案 0 :(得分:2)
没有一种简单的方法可以做到这一点。您可以执行以下几项操作,例如密码保护您的目录(但密码必须存储在apk中)或使用API密钥(但同样,您需要将其存储在apk中)。
一种选择是通过某种复杂的算法动态构建字符串路径,从而使proguard混淆有用。但是,在一天结束时,您仍然容易受到数据包检查(假设您没有使用HTTPS)。您还可以在应用程序上运行并在服务器上运行的共享密钥生成器(基本上是一种基于时间生成看似随机密钥的算法)。然后在运行时比较这些值,如果它们匹配,则将提供该文件。再次,proguard混淆将有助于弄清楚算法如何工作。
另一种选择是利用Android的私人空间。如果手机扎根你就会被冲洗,但这会有所帮助。基本上遵循这个算法: