關鍵詞:android linux getprop setprop wathcprop
系統:android2.3 android4.0
一、 設定檔
在android系統中,有一些初始化的設定檔,例如:
/init.rc/default.prop/system/build.prop
檔案裡面裡面配置了開機設定的系統屬性值,這些屬性值,可以通過getprop擷取,setprop設定,如:
二、getprop stopprop watchprop 使用和它的格式
1、getprop[key]
擷取指定key的配置值,如果不帶參數,只是getprop則是顯示系統所有的配置值,輸入命令,如:
#getprop
2、setprop[key] [value] 設定指定key的屬性值
如:setprop
3、getprop setprop 使用執行個體
root@android:/ # getpropdhcp.wlan0.leasetime //得到的值為36003600root@android:/ # setprop dhcp.wlan0.leasetime3000 //設定值為3000root@android:/ # getprop[dhcp.wlan0.ipaddress]: [192.168.1.113][dhcp.wlan0.leasetime]:[3000] //再用getporp查看設定的值[dhcp.wlan0.mask]: [255.255.255.0]
4、watchprops
監聽系統屬性的變化,如果期間系統的屬性發生變化則把變化的值顯示出來
/system # watchprops1307501833 sys.settings_system_version = '37'1307501836 sys.settings_system_version ='38'1307501862 persist.sys.timezone ='Asia/Hong_Kong'
三、toolbox子命令
1、命令實現代碼位置
其實這三個命令都是toolbox的子命令,如果有興趣的可以看在android源碼中看到其對應的源碼:
system/core/toolbox/
一般而言,我們在串口中輸入getprop指令,會出現很多類似索引值對的系統變數值,如:
2、java中調用linux的指令
(1)、在java中如何調用linux的指令,主要通過如下代碼實現:
Process process =Runtime.getRuntime().exec(com); InputStreamReader ir = newInputStreamReader(process.getInputStream()); BufferedReader input = newBufferedReader(ir);
(2)、getprop和setprop既然都是命令,也用上面的方面嘗試得到值
getprop 用法:getprop [key]
setprop用法:setprop [key] [value]
註:實際中是沒有中括弧的。
所以用法同上:
Process process =Runtime.getRuntime().exec("getprop ro.runtime.firstboot"); InputStreamReader ir = newInputStreamReader(process.getInputStream()); BufferedReader input = newBufferedReader(ir);