这篇文章主要给大家介绍了关于Android获取与设置系统环境变量的方法指南,文中通过示例代码介绍的非常详细,对各位Android开发者们具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
前言
在Android源码的分析过程中经常会看到System.getenv(“xxx”)和getenv(“xxx”)以及Os.getenv(“xxx”)获取Android系统的环境变量值,本篇的重点不是分析代码的调用逻辑,而是讲解怎么在Android开发源码环境下增加和在Android终端环境下增加/查看系统环境变量。废话不多说开干!
一. Android源码环境下增加环境变量
有过Linxu开发相关经验的童靴们应该都知道,对于添加环境变量一般都是通过export,然后通过echo来显示,在Android中同样也是如此。通过全局搜索我们发现Android源码的环境变量设置的默认文件是在system/core/rootdir/init.environ.rc.in中,这里并不是说只能在这个rc中添加,其实在其它的rc中在合适的触发时机加也是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%
所以我们想添加环境变量只需要export就OK了,这里就不实际操作了,有兴趣的可以自行操作。
二. Android终端下查看和修改环境变量
在Android终端下查看和修改环境变量肯定是通过adb了,下面我们实际操演一番。
2.1 查看系统环境变量
这里还是得借用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 设置系统环境变量
这里还是得借用export和echo命令了,操作如下:
130|msm8953_64:/ # export HELLOWORD=Android
msm8953_64:/ # echo $HELLOWORD
Android
msm8953_64:/ #
小结
好了,Android获取和设置系统环境变量这一篇章就告一段落了。学会了这一招我们就可以在分析Android源码中通过adb命令直接查看系统环境变量的相关值了,这样分析起来就得心应手了。各位江湖见!
总结
到此这篇关于Android获取与设置系统环境变量的文章就介绍到这了,更多相关Android获取与设置系统环境变量内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:Android获取与设置系统环境变量的方法指南
基础教程推荐
- iOS开发 全机型适配解决方法 2023-01-14
- Android实现短信验证码输入框 2023-04-29
- iOS中如何判断当前网络环境是2G/3G/4G/5G/WiFi 2023-06-18
- iOS Crash常规跟踪方法及Bugly集成运用详细介绍 2023-01-18
- iOS开发使用XML解析网络数据 2022-11-12
- Flutter进阶之实现动画效果(三) 2022-10-28
- Android Compose自定义TextField实现自定义的输入框 2023-05-13
- IOS获取系统相册中照片的示例代码 2023-01-03
- Android开发Compose集成高德地图实例 2023-06-15
- MVVMLight项目Model View结构及全局视图模型注入器 2023-05-07