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"
}
}
...
}
android 获取properties文件路径,读取local.properties文件相关推荐
- android获取存储设备根目录,浅谈android获取存储目录(路径)的几种方式和注意事项...
通常, 我们创建文件/目录, 或者存储图片什么的, 我们都需要拿到手机的存储路径, 现在我们就来看一下获取手机存储路径的几种方式(作为工具类方法调用即可): 第一种: 获取 /storage/emul ...
- java 文件路径读取,java中依据路径读取文件
java中根据路径读取文件 根据文件路径读取文件.具体代码如下: /** * 根据文件路径读取文件 * @param path * @return String * @throws IOExcepti ...
- Android 获取SD卡路径和判断SD卡是否存在.
android获取sd卡路径方法: public String getSDPath(){ File sdDir = null; boolean sdCardExist =Environment.get ...
- fopen文件路径怎么写_PHP文件上传
文件系统处理的作用: 1. 所有的项目离不开文件处理 2. 可以用文件长时间保存数据 3. 建立缓存, 服务器中文件操作 文件处理 1. 文件类型 以Linux为模型的, 在Windows只能获取fi ...
- python读取写入文件_Python读取和写入文件
1 从文件中读取数据 1.1 读取整个文件 创建名为test的txt文本文件,添加内容如下所示: 1234567890 2345678901 3456789012 实现代码: with open('t ...
- python进阶14文件路径(找不到文件)
原创链接:python进阶14文件路径(找不到文件) 开发时遇到问题,文件路径不正确,找不到文件等等,都是这一类问题. curdir,argv,file 举例: 文件1代码: 1 2 3 4 5 6 ...
- 读取云服务器文件列表,读取云服务器文件列表
读取云服务器文件列表 内容精选 换一换 登录Windows操作系统的弹性云服务器时,需使用密码方式登录.因此,用户需先根据创建弹性云服务器时使用的密钥文件,获取该弹性云服务器初始安装时系统生成的管理员 ...
- java 通过文件路径获得MulipartFile类型文件 - File转MulipartFile
java 通过文件路径获得MulipartFile类型文件 - File转MulipartFile 方式一:使用MockMultipartFile函数 方式二:数据流实现 思路:路径创建出File文件 ...
- android 获取默认存储路径,Android获取外置SD卡存储路径的方法
在开发应用的过程中,经常会遇到需要获取设备存储路径的问题.而从网上看到的很多方法获取到的都是内置存储位置,并非外置SD卡路径,因此我推荐使用反射的机制来获取外置存储的路径. 通常,使用Environm ...
最新文章
- linux设置nexus开机自启动_CentOS7配置nexus开机自启动
- Windows IIS 日志分析研究(Log Parser Log Parser Lizard Log Parser Studio) update...
- 什么原因导致芯片短路_华为为什么突然大量用起了联发科芯片,或是这三个产品策略原因...
- 【神经网络】给初学者们讲解人工神经网络(ANN)
- 合并两个有序链表 java_合并两个有序链表
- SpringCloud学习笔记018---SpringBoot前后端分离_集成_SpringSecurity_简单实现
- 2017年(毕业生)暑期实习信息汇总
- 8086cpu学习笔记(3):寻址方式
- 鸟瞰 Java 并发框架
- 【报告分享】 百度2021国潮骄傲搜索大数据报告-百度x人民网(附下载)
- bat脚本积累(三)—— bat的注释
- 2021-11-11 VirtualBox 安装windows 不全屏显示的解决方法
- mybatis基础入门
- 电脑误格式化的数据怎么恢复,误格式化数据恢复教程
- 136A.Presents
- 日子大不了就是有粥喝粥,有菜吃菜
- Spring @Value读取配置文件
- python字典的遍历方式:向列表一样通过索引遍历字典的值
- 语音处理/语音识别基础(三)- 声音的特征和声音的能量
- 各种食用油的正确烹饪方法
热门文章
- 23种设计模式——访问者模式
- win10 更新后右下角 网络图标没有了,并且打开或关闭系统图标中的网络为灰色
- Java基础编程之输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数
- k910 Android 5,5英寸海思K910T 华为Ascend P7全新发布
- 如何使用SVN+Axure RP 8.0创建团队项目,实现团队协同
- 与Flash9的一次亲密接触!
- illegal cyclic inheritance involving trait Iterable val wordRDD: RDD[String] = fileRDD.flatMap(
- linux timeval,Linux上关于C语言的struct timeval{}的一道题
- 众昂矿业:选矿和浮选技术决定萤石品位高低
- python3.7安装wordcloud_python wordcloud安装