我想从模块根目录访问属性文件,但未能找到任何合适的示例来访问属性文件,因为许多人只告诉如何从android中的资产访问。我的app结构如下,
├── app
│ ├── key.properties <--It is my property file, which contains app keys,to be used in app
│ └── src <-- Here i want to access the key.properties to access some keys
├── build.gradle
├── gradle
├── gradlew
├── gradlew.bat
├── settings.gradle
└── local.properties
答案 0 :(得分:2)
Mike M 是正确的,你应该使用gitignore从git中隐藏你的文件,这样它就不会被推送到你的存储库中。
为了扩展这一点,这里有一个解决方案,可以在构建过程中对您的属性进行gradle加载,并通过BuildConfig将它们提供给您的应用。
1 / app / build.gradle
在first_treeview.Nodes.Add((TreeNode) temp_node.Clone());
插件之前,添加:
android { ... }
2 / app / build.gradle
在Properties props = new Properties()
try {
props.load(file('keys.properties').newDataInputStream())
} catch (Exception ex) {
throw new GradleException("Missing keys.properties file.");
}
配置中,添加
buildTypes
3 /您应用中的任何课程
您的密钥可以buildTypes {
debug {
buildConfigField "String", "KEY_MY_PROP", "\"${props.getProperty("myPropKey")}\""
}
release {
buildConfigField "String", "KEY_MY_PROP", "\"${props.getProperty("myPropKey")}\""
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}