我试图弄清楚将API的密钥添加到我的Android应用程序中的最佳做法。
- 有些人建议在meta-data
文件中使用Manifest.xml
- link。这让我觉得,最好在resources
文件中添加密钥。
<meta-data android:value="key_value" android:name="api_key"></meta-data>
- 有人说,将其添加到resources
- link
<string name="api_key">api_key_value</string">
- 我们可以在类代码
中简单地添加它api.configue("api_key_value");
- 有些人说添加Manifest.xml
和resources
文件中的密钥会让其他应用读取它 - link。
<string name="foo">bar</string">
我没有尝试找到最安全的方式,因为对我来说,我会将密钥保存在服务器中并在运行时检索它。
我询问最佳方法,以及最佳实践。
提前致谢。
答案 0 :(得分:3)
我没有关注这个问题,因为您似乎已经确定如何处理API密钥(在服务器中)。
关于API的一篇很棒的文章可以在Android中隐藏: http://www.androidauthority.com/how-to-hide-your-api-key-in-android-600583/
在您的情况下,由于您将在运行时从服务器检索密钥,我会从文章中跟踪#4:API密钥公钥/私钥交换,但它可能很麻烦。
另外,我会考虑NDK方法(#3来自文章)。作为客户端方法,它非常简单。