在android原始碼的分析過程中經常會看到system.getenv(「***」)和getenv(「***」)以及os.getenv(「***」)獲取android系統的環境變數值,本篇的重點不是分析**的呼叫邏輯,而是講解怎麼在android開發原始碼環境下增加和在android終端環境下增加/檢視系統環境變數。廢話不多說開幹!
# set up the global environment
on init
export android_bootlogo 1
export android_root /system
export android_data /data
export android_storage /storage
export external_storage /sdcard
export asec_mountpoint /mnt/asec
export bootclasspath %bootclasspath%
export systemserverclasspath %systemserverclasspath%
%export_global_asan_options%
%export_global_gcov_options%
所以我們想新增環境變數只需要export就ok了,這裡就不實際操作了,有興趣的可以自行操作。
在android終端下檢視和修改環境變數肯定是通過adb了,下面我們實際操演一番。
這裡還是得借用export和echo命令了,操作如下:
λ adb shell
msm8953_64:/ # export
android_assets
android_bootlogo
android_data
android_root
android_socket_adbd
android_storage
asec_mountpoint
bootclasspath
download_cache
external_storage
home
hostname
logname
path
shell
systemserverclasspath
term
tmpdir
user
msm8953_64:/ # echo $android_bootlogo
1msm8953_64:/ # echo $android_data
/data
msm8953_64:/ #
這裡還是得借用export和echo命令了,操作如下:
130|msm8953_64:/ # export helloword=android
msm8953_64:/ # echo $helloword
android
msm8953_64:/ #
好了,android獲取和設定系統環境變數這一篇章就告一段落了。學會了這一招我們就可以在分析android原始碼中通過adb命令直接檢視系統環境變數的相關值了,這樣分析起來就得心應手了。各位江湖見!
Android系統設定
com.android.settings.accessibilitysettings 輔助功能設定 com.android.settings.activitypicker 選擇活動 com.android.settings.apnsettings apn設定 應用程式 設定com.android.s...
Android之獲取系統語言和設定APP語言
1.獲取當前系統語言 locale curlocale getresources getconfiguration locale 通過locale的equals方法,判斷出當前語言環境 if curlocale.equals locale.simplified chinese else if loc...
Android 各種音量的獲取和設定
通過程式獲取android系統手機的鈴聲和音量。同樣,設定鈴聲和音量的方法也很簡單 audiomanager am audiomanager getsystemservice context.audio service 通話音量 int max am.getstreammaxvolume audio...