Android獲取與設(shè)置系統(tǒng)環(huán)境變量的方法指南
前言
在Android源碼的分析過程中經(jīng)常會(huì)看到System.getenv(“xxx”)和getenv(“xxx”)以及Os.getenv(“xxx”)獲取Android系統(tǒng)的環(huán)境變量值,本篇的重點(diǎn)不是分析代碼的調(diào)用邏輯,而是講解怎么在Android開發(fā)源碼環(huán)境下增加和在Android終端環(huán)境下增加/查看系統(tǒng)環(huán)境變量。廢話不多說開干!
一. Android源碼環(huán)境下增加環(huán)境變量
有過Linxu開發(fā)相關(guān)經(jīng)驗(yàn)的童靴們應(yīng)該都知道,對(duì)于添加環(huán)境變量一般都是通過export,然后通過echo來顯示,在Android中同樣也是如此。通過全局搜索我們發(fā)現(xiàn)Android源碼的環(huán)境變量設(shè)置的默認(rèn)文件是在system/core/rootdir/init.environ.rc.in中,這里并不是說只能在這個(gè)rc中添加,其實(shí)在其它的rc中在合適的觸發(fā)時(shí)機(jī)加也是OK的,我源碼下的該文件如下:
# set up the global environment on init export ANDROID_BOOTLOGO 1 export ANDROID_ROOT /system export ANDROID_ASSETS /system/app 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%
所以我們想添加環(huán)境變量只需要export就OK了,這里就不實(shí)際操作了,有興趣的可以自行操作。
二. Android終端下查看和修改環(huán)境變量
在Android終端下查看和修改環(huán)境變量肯定是通過adb了,下面我們實(shí)際操演一番。
2.1 查看系統(tǒng)環(huán)境變量
這里還是得借用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 1 msm8953_64:/ # echo $ANDROID_DATA /data msm8953_64:/ #
2.2 設(shè)置系統(tǒng)環(huán)境變量
這里還是得借用export和echo命令了,操作如下:
130|msm8953_64:/ # export HELLOWORD=Android msm8953_64:/ # echo $HELLOWORD Android msm8953_64:/ #
小結(jié)
好了,Android獲取和設(shè)置系統(tǒng)環(huán)境變量這一篇章就告一段落了。學(xué)會(huì)了這一招我們就可以在分析Android源碼中通過adb命令直接查看系統(tǒng)環(huán)境變量的相關(guān)值了,這樣分析起來就得心應(yīng)手了。各位江湖見!
總結(jié)
到此這篇關(guān)于Android獲取與設(shè)置系統(tǒng)環(huán)境變量的文章就介紹到這了,更多相關(guān)Android獲取與設(shè)置系統(tǒng)環(huán)境變量?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android Studio實(shí)現(xiàn)簡(jiǎn)單計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了Android Studio實(shí)現(xiàn)簡(jiǎn)單計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03Android 中 Tweened animation的實(shí)例詳解
這篇文章主要介紹了Android 中 Tweened animation的實(shí)例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下2017-09-09Android控件CardView實(shí)現(xiàn)卡片效果
這篇文章主要為大家詳細(xì)介紹了Android控件CardView實(shí)現(xiàn)卡片效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02Android?Gradle?插件自定義Plugin實(shí)現(xiàn)注意事項(xiàng)
這篇文章主要介紹了Android?Gradle?插件自定義Plugin實(shí)現(xiàn)注意事項(xiàng),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-06-06Android開發(fā)實(shí)例之多點(diǎn)觸控程序
本文主要介紹 Android開發(fā)多點(diǎn)觸控,這里提供了詳細(xì)的資料和示例代碼,以及實(shí)現(xiàn)效果圖,有開發(fā)Android應(yīng)用需要這樣的功能的小伙伴可以參考下2016-08-08