init.rc中getprop获取,setprop设置以及whatchprops命令
2015-10-07 16:57
295 查看
在android系统中,有一些初始化的配置文件,例如:
freescal android4.4中
/init.rc /android/device/fsl/sabresd_6dq$ vim init.rc
/default.prop /android./out/target/product/sabresd_6dq/root/default.prop
/system/build.prop /android /out/target/product/sabresd_6dq/system/build.prop
文件里面里面配置了开机设置的系统属性值,
这些属性值,可以通过getprop获取,setprop设置,
它的格式如下:
getprop [key]
获取指定key的配置值,如果不带参数,只是getprop则是显示系统所有的配置值。
[dalvik.vm.heapsize]: [24m]
[curlockscreen]: [1]
[ro.sf.hwrotation]: [0]
[ro.config.notification_sound]: [OnTheHunt.ogg]
[ro.config.alarm_alert]: [Alarm_Classic.ogg]
setprop [key] [value]
设置指定key的属性值,
watchprops
监听系统属性的变化,如果期间系统的属性发生变化则把变化的值显示出来
/system # watchprops
1307501833 sys.settings_system_version = '37'
1307501836 sys.settings_system_version = '38'
1307501862 persist.sys.timezone = 'Asia/Hong_Kong'
其实这三个命令都是toolbox的子命令,如果有兴趣的可以看在android源码中看到其对应的源码:
system/core/toolbox/
setprop [key] [value] 是设置指定key的属性值的,望采纳
表示「ro.product.device = "dma6410xp"」的意思。Android 系統有非常多 property,這些 property 都是 Android 作業系統本身在使用的重要變數,例如:上例的「ro.product.board」就是給 HAL 使用的重要變數。
玩转Android中的setprop, getprop, watchprops命令
setprop, getprop和watchprops都与环境变量有关, setprop和getprop很简单, 我就不多说了。 下面简单聊聊非常实用的watchprops命令。
在调试程序时候, 经常需要关注环境变量的状态, 当然, 你总用getprop也可以, 但是感觉很不连贯, 没有实现实时监控。 此时, watchprops命令刚好可以解决这个问题。
实验: 用adb连上android手机, 进入shell, 然后输入whatchprops命令, 然后玩转你的手机, 进行各种设置, 观察shell界面的变化。
在 init.rc 裡找到類似以下的命令片斷:
on boot
setprop ro.FOREGROUND_APP_ADJ 0
setprop ro.VISIBLE_APP_ADJ 1
setprop ro.SECONDARY_SERVER_ADJ 2
...
以上是一個動作(action)區段的設定,說明如下:
1. on boot 表示在開機時(boot)觸發此動作區段裡的所有命令。
2. setprop 是設定 Android property 的命令。
上述提及的「動作區段」設定格式如下:
on <trigger>
<command>
<command>
<command>
當 "trigger" 為 "boot" 時,表示「開機觸發」。一個動作區段裡,可以有任意個命令(command),每個命令獨立於一行。最常見,也最重要的命令就是 'setprop'。'setprop' 用來設定 'property' 的值,property 有點像是系統的「環境變數(environment variable)」。其命令格式如下:
freescal android4.4中
/init.rc /android/device/fsl/sabresd_6dq$ vim init.rc
/default.prop /android./out/target/product/sabresd_6dq/root/default.prop
/system/build.prop /android /out/target/product/sabresd_6dq/system/build.prop
文件里面里面配置了开机设置的系统属性值,
这些属性值,可以通过getprop获取,setprop设置,
它的格式如下:
getprop [key]
获取指定key的配置值,如果不带参数,只是getprop则是显示系统所有的配置值。
[dalvik.vm.heapsize]: [24m]
[curlockscreen]: [1]
[ro.sf.hwrotation]: [0]
[ro.config.notification_sound]: [OnTheHunt.ogg]
[ro.config.alarm_alert]: [Alarm_Classic.ogg]
setprop [key] [value]
设置指定key的属性值,
watchprops
监听系统属性的变化,如果期间系统的属性发生变化则把变化的值显示出来
/system # watchprops
1307501833 sys.settings_system_version = '37'
1307501836 sys.settings_system_version = '38'
1307501862 persist.sys.timezone = 'Asia/Hong_Kong'
其实这三个命令都是toolbox的子命令,如果有兴趣的可以看在android源码中看到其对应的源码:
system/core/toolbox/
setprop [key] [value] 是设置指定key的属性值的,望采纳
表示「ro.product.device = "dma6410xp"」的意思。Android 系統有非常多 property,這些 property 都是 Android 作業系統本身在使用的重要變數,例如:上例的「ro.product.board」就是給 HAL 使用的重要變數。
玩转Android中的setprop, getprop, watchprops命令
setprop, getprop和watchprops都与环境变量有关, setprop和getprop很简单, 我就不多说了。 下面简单聊聊非常实用的watchprops命令。
在调试程序时候, 经常需要关注环境变量的状态, 当然, 你总用getprop也可以, 但是感觉很不连贯, 没有实现实时监控。 此时, watchprops命令刚好可以解决这个问题。
实验: 用adb连上android手机, 进入shell, 然后输入whatchprops命令, 然后玩转你的手机, 进行各种设置, 观察shell界面的变化。
在 init.rc 裡找到類似以下的命令片斷:
on boot
setprop ro.FOREGROUND_APP_ADJ 0
setprop ro.VISIBLE_APP_ADJ 1
setprop ro.SECONDARY_SERVER_ADJ 2
...
以上是一個動作(action)區段的設定,說明如下:
1. on boot 表示在開機時(boot)觸發此動作區段裡的所有命令。
2. setprop 是設定 Android property 的命令。
上述提及的「動作區段」設定格式如下:
on <trigger>
<command>
<command>
<command>
當 "trigger" 為 "boot" 時,表示「開機觸發」。一個動作區段裡,可以有任意個命令(command),每個命令獨立於一行。最常見,也最重要的命令就是 'setprop'。'setprop' 用來設定 'property' 的值,property 有點像是系統的「環境變數(environment variable)」。其命令格式如下:
相关文章推荐
- tomcat
- 转载自~浮云比翼:Step by Step:Linux C多线程编程入门(基本API及多线程的同步与互斥)
- 大型高并发网站首选LAMP架构
- win7+kali linux 双系统 时间同步
- Redhat/CentOS系统KVM虚拟机安装过程详解
- Python Linux下安装python 软件包
- centos 6.5 搭建dhcp服务器
- adb getprop setprop watchprop用法
- docker-machine的基本使用
- OpenGl 名词解释之大白话
- linux下的打包压缩和解压命令
- 随机森林算法的使用
- iOS开发-------MVC架构思想-植物大战僵尸
- 解决popupwindow中弹出输入法被遮挡问题
- linux中断子系统(二) - 注册用户中断处理函数
- Launchpad添加openPGP keys
- 我的常用网站整理
- nginx如何执行请求的
- Hadoop 2.6.0+Hbase1.12+mahout0.9 集群搭建
- linux下使用socket绑定(bind)时:address already in use