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)該都知道,對于添加環(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)境變量內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android EditText搜索框?qū)崿F(xiàn)圖標(biāo)居中
本篇文章主要介紹了Android EditText搜索框?qū)崿F(xiàn)圖標(biāo)居中,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-07-07
Android系統(tǒng)中使用shareuserid獲取系統(tǒng)權(quán)限的教程
這篇文章主要介紹了Android系統(tǒng)中使用shareuserid獲取系統(tǒng)權(quán)限的教程,這樣以來不同的apk就可以互相訪問對應(yīng)的app文件夾,需要的朋友可以參考下2016-04-04
Android實(shí)現(xiàn)可拖拽的GridView效果長按可拖拽刪除數(shù)據(jù)源
這篇文章主要介紹了Android實(shí)現(xiàn)可拖拽的GridView效果長按可拖拽刪除數(shù)據(jù)源,要實(shí)現(xiàn)的基本功能是長按,移到垃圾桶,刪除數(shù)據(jù),需要的朋友可以參考下2017-12-12
Android 狀態(tài)欄的設(shè)置適配問題詳解
這篇文章主要介紹了Android 狀態(tài)欄的設(shè)置適配問題詳解的相關(guān)資料,需要的朋友可以參考下2017-06-06
Android 自定義球型水波紋帶圓弧進(jìn)度效果(實(shí)例代碼)
最近小編接到一個(gè)這樣的需求,需要實(shí)現(xiàn)一個(gè)圓形水波紋,帶進(jìn)度,兩層水波紋需要漸變顯示,且外圍有一個(gè)圓弧進(jìn)度。今天小編給大家分享實(shí)例代碼,感興趣的朋友一起看看吧2019-12-12
Flutter?DateTime獲取本月的開始時(shí)間與結(jié)束時(shí)間方法
這篇文章主要為大家介紹了Flutter?DateTime獲取本月的開始時(shí)間與結(jié)束時(shí)間方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2023-05-05

