android 获取properties文件路径,读取local.properties文件

什么是local.properties文件

通过Android Studio创建一个Android工程后,在工程的根目录中都会生成一个名称为:local.properties文件,该文件一般用来存放该Android工程私有的属性配置,比如Android的sdk路径等等。local.properties文件一般都是存储到本地,禁止提交到服务器上。

读取local.properties文件内容

def readLocalProperties(){

File file = rootProject.file('local.properties')

if(file.exists()){

//加载资源

InputStream inputStream = rootProject.file('local.properties').newDataInputStream();

Properties properties = new Properties()

properties.load(inputStream)

if (properties.containsKey("sdk.dir")){

println properties.getProperty("sdk.dir")

}

}

}

local.properties的应用

利用local.properties文件存储到本地不提交的服务器的使用习惯,那么可以将一个项目的私有配置属性,存储到该文件中,比如:应用的包名、应用名称等

下面是一个在local.properties中配置项目的包名的demo

创建local.properties文件中添加包名属性

ndk.dir=/Users/trunx/android/android-sdk/ndk-bundle

sdk.dir=/Users/trunx/android/android-sdk

pakcagename=com.yumodev.angradle.test

在项目的build.gradle中解析local.properties

首先定义函数parseLocalProperties解析出来应用包名

def parseLocalProperties(){

File file = rootProject.file('local.properties')

if(file.exists()){

InputStream inputStream = rootProject.file('local.properties').newDataInputStream();

Properties properties = new Properties()

properties.load(inputStream)

if(properties.containsKey("packagename")){

println 'packageName:'+properties.getProperty("packagename")

ext.packagename = properties.getProperty("packagename")

println 'packageName:'+project["packagename"]

}

}

}

执行parseLocalProperties函数

allprojects {

repositories {

jcenter()

}

parseLocalProperties()

}

在Module的build.gradle中修改应用的包名

android {

compileSdkVersion 25

buildToolsVersion "25.0.2"

defaultConfig{

minSdkVersion 14

targetSdkVersion 25

versionCode 1

versionName "1.0"

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

if(project.hasProperty('packagename')){

println project['packagename']

applicationId project['packagename']

}else{

println "has not package_name"

applicationId "com.yumodev.angradle"

}

}

...

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
local.properties配置文件一般用来存放Android工程的私有属性配置,比如Android的sdk路径等等。该文件一般存储在本地,不会提交到服务器上。\[1\]而在进行开发时,如果需要在调试阶段经常手动修改配置,可以使用properties文件来实现。可以在项目的根目录下创建一个properties文件,比如moudle.properties,然后在文件中编写需要读取的内容。例如,可以设置各个模块是否单独编译的配置。然后在各个模块的build.gradle文件读取这些配置,根据配置来应用不同的插件。\[2\]这样可以方便地根据配置来控制各个模块的编译方式。 #### 引用[.reference_title] - *1* [读取local.properties文件](https://blog.csdn.net/weixin_36155936/article/details/117679939)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [android studio 从local.properties文件读取配置数据](https://blog.csdn.net/jqwei2/article/details/95309151)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值