我可以在JAVA STATEMENT中获取"gradle.properties"中定义的属性吗?

Des*_*Yao 4 java android gradle build.gradle android-gradle-plugin

我在gradle.properties文件中定义了一个属性,如下所示:

user.password=mypassword
Run Code Online (Sandbox Code Playgroud)

我可以在java语句中将它用作变量值吗?

Pad*_*wan 7

您必须先读取属性文件并提取属性.

Properties prop = new Properties();
InputStream input = null;

try {

    input = new FileInputStream("gradle.properties");

    // load a properties file
    prop.load(input);

    // get the property value and print it out
    System.out.println(prop.getProperty("user.password"));
} catch (IOException ex) {
    ex.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

你可以在这里找到详细的教程

  • gradle.properties 文件不会在已编译的应用程序中不再存在吗? (7认同)

Opa*_*pal 7

是的,你可以,但这不是一个好主意,也不是一个好的做法.gradle.propertiesfile本身就是为了保持gradle的属性,例如在构建时使用的JVM args.

如果您需要在属性文件中存储用户/传递对,则应将其放在src/main/resources其他适当的文件夹下并与之分开gradle.properties.

附注:不确定在移动应用程序中保留属性文件是否通常是安全的.

  • 错误的!私钥、密码和个人数据必须在 gradle.properties 中 (3认同)
  • 如果资源中存在用户/通行证,则需要将其发送给客户。理想情况下,它们应该仅位于未发布的“gradle.properties”中。如果有人想使用它,他们需要在自己的“gradle.properties”中添加所需的用户/密码。AFAIK,这是正确的方法 (3认同)
  • 谢谢:)我会处理的! (2认同)