在专用类VS字符串文件中存储Android API键



在类静态变量中存储诸如API身份验证的事物的应用程序键的优点和缺点是什么

public class Keys {
   public static final int APP_KEY = 4848jffj48j89489;
}

vs将它们存储在字符串文件中

<string name="app_key">4848jffj48j89489</string>

我可以想象将它们存储在字符串文件中的一些内存注意事项和优势(仅在需要时访问变量),但是我不确定是否会留下可以查看的键,以查看APK是否被分解/提取

同样,我不确定使用静态变量的所有含义,我认为它们不会占有太多记忆,但我不确定它们是否可以收集垃圾并返回null,或者钥匙是否可以被暴露在分解/提取的APK中

无论如何,也许我错过了其他一些东西,因此任何见解都会受到赞赏。

如果您在API 14或更新的情况下,请考虑使用Android键链或密钥库。http://developer.android.com/reference/android/security/keychain.htmlhttp://developer.android.com/reference/java/security/keystore.html

根据我的经验,您询问工作或多或少相同的两种方法。我认为,静态变量更容易访问。垃圾收集不应该是问题。无论哪种情况,任何人打开您的APK并取出以这样的方式存储的钥匙都是微不足道的。根据建议的建议,使用Android钥匙扣或钥匙室,使您的钥匙受益于除了最确定的(不幸的是什么都是完全安全的),而以某种复杂性为代价。

字符串文件在需要将字符串转换为几种语言的情况下使用字符串文件。就您而言,看来您没有。因此,静态方式更好,因为您可以更轻松地访问它。

最新更新