【发布时间】:2020-09-21 07:55:54
【问题描述】:
我只是想知道res(generated)/values 文件夹下的文件values.xml。该文件包含 firebase 数据库 URL、google API 密钥等信息。它会对应用程序造成任何安全问题吗?任何人都可以通过反编译apk来使用这些值访问firebase数据库吗?附上文件截图。
【问题讨论】:
标签: android firebase google-api
我只是想知道res(generated)/values 文件夹下的文件values.xml。该文件包含 firebase 数据库 URL、google API 密钥等信息。它会对应用程序造成任何安全问题吗?任何人都可以通过反编译apk来使用这些值访问firebase数据库吗?附上文件截图。
【问题讨论】:
标签: android firebase google-api
您可以在根目录中创建一个文件key.properties,其中包含不同密钥的值:
GOOGLE_KEY="1234567890"; //Example
然后
def apikeyFile = rootProject.file("key.properties")
def apikey = new Properties()
apikey.load(new FileInputStream(apikeyFile))
android {
defaultConfig {
buildConfigField("String", "GOOGLE_KEY", apikey['GOOGLE_KEY'])
}
}
您现在可以使用 Gradle 提供的 BuildConfig 对象在源代码中的任何位置访问这些字段:
String googleKey = BuildConfig.GOOGLE_KEY;
val googleKey = BuildConfig.GOOGLE_KEY //KOTLIN
仅供参考
确保通过添加到您的 .gitignore 文件中排除该文件:
key.properties
【讨论】: