当前位置: 首页 > 知识库问答 >
问题:

如何读取本地文件中定义的属性。生成中的属性。格拉德尔

吕扬
2023-03-14

我已经设置了sdk。dir和ndk。本地中的dir。属性。

如何读取sdk.dirndk.dir中定义的值build.gradle文件

共有3个答案

裴俊迈
2023-03-14

尽管@rciovati的答案肯定是正确的,但也有另一种读取sdk.dirndk.dir值的方法。

正如Gaku Ueda(Getting ndk directory)在这篇博客文章中指出的,BasePlugin类提供了getNdkFolder()getSdkFolder()的方法:

def ndkDir = project.plugins.findPlugin('com.android.application').getNdkFolder()
def sdkDir = project.plugins.findPlugin('com.android.application').getSdkFolder()

注意:您可能需要更改com.Android应用程序com.Android库如果您正在构建库

这可能是一种更优雅的读取文件夹值的方法。尽管必须指出,@rciovati提供的答案更灵活,因为可以读取属性文件中的任何值。

仰雅昶
2023-03-14

local.properties

default.account.iccid=123

build.gradle-

def Properties properties = new Properties()
properties.load(project.rootProject.file("local.properties").newDataInputStream())

defaultConfig {

    resValue "string", "default_account_iccid", properties.getProperty("default.account.iccid", "")
}

在代码中,它作为其他字符串从参考资料中获取-

resources.getString(R.string.default_account_iccid);
章翔宇
2023-03-14

您可以这样做:

Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
def sdkDir = properties.getProperty('sdk.dir')
def ndkDir = properties.getProperty('ndk.dir')

使用项目。rootProject如果您正在读取子项目生成中的属性文件。格雷德尔

.
├── app
│   ├── build.gradle <-- You are reading the local.properties in this gradle build file
│   └── src
├── build.gradle
├── gradle
├── gradlew
├── gradlew.bat
├── settings.gradle
└── local.properties

如果属性文件位于同一子项目目录中,您可以只使用project

 类似资料:
  • 在我的Android Studio项目中,我在gradle中定义了代理设置。与Git repo同步的属性文件。只要在那里定义了代理密码,我就需要将其移动到本地。属性文件。我想实现这样的smth: 在gradle.properties: 在当地。特性: 我该怎么做?

  • 问题内容: 我可以创建自定义属性并将其应用到normal ,如下所示: 我的问题:是否可以在不创建扩展类的情况下读取这些自定义属性的值?我的意思是,我想从我的中读取自定义属性,但是到目前为止,我所看到的示例要求我从自定义视图的构造函数中读取值 问题答案: 我的问题:是否可以在不创建扩展EditText的类的情况下读取那些自定义属性的值? 是的,您无需扩展类即可获取这些属性。为此,你可以使用一个特殊

  • 在产品代码中,我可以使用以下代码来阅读aws。违约来自

  • 问题内容: 我正在按照本教程进行操作,并且在 将值从一个组件的状态传递到另一个组件 时遇到了一个问题。 当执行组件中的功能时,将引发错误。 什么会导致的是从路过的时候到? 问题答案: 首先,设置更安全的初始数据: 并确保您的ajax数据。 如果您按照上面的两个指示(如“ 演示”)操作,它应该可以工作。 更新:您可以仅使用条件语句包装.map块。

  • 问题内容: 我创建了一个REST Web服务,在其中创建了config.properties文件来存储和检索整个应用程序中的一些用户名和密码。我将其存储在/src/main/resources/config.properties中。 当我尝试从eclipse的Java代码加载它时,它工作正常。但是当我将它部署在tomcat中时,它没有加载。我用来加载属性文件的代码是 谁能帮我解决这个问题 问题答案

  • 问题内容: 在我的应用程序上下文中,我定义了属性文件: 我想获取JSP页面上该文件中定义的属性的值。有没有办法做到这一点 问题答案: 只能解析Spring配置中的占位符(XML或注释)。在Spring应用程序中使用bean 是非常普遍的。您可以通过这种方式从视图中访问它(假设您正在使用): 然后,在您的JSP中,您可以使用或。