我想在源代码中使用自定义的环境变量。我使用System.getenv()来执行此操作,代码行如下所示。 Log.d("MyTest","== MyEnv " + System.getenv("AP") + " ANDROID_ASSETS:" + System.getenv("ANDROID_ASSETS"));
在我执行代码之前,我使用export export AP="12345"
定义我的AP变量,这是我输出的set命令
ANDROID_ASSETS=/system/app
ANDROID_BOOTLOGO=1
ANDROID_DATA=/data
ANDROID_PROPERTY_WORKSPACE=9,32768
ANDROID_ROOT=/system
AP=12345
...
然后我执行我的代码,我从logcat
获取这一行D/MyTest( 5363): == MyEnv null ANDROID_ASSETS:/system/app
我定义的Environment变量的值为null。为什么它不起作用的任何建议?
答案 0 :(得分:0)
导出命令仅适用于一个会话,不适用于整个系统。您不能以这种方式设置环境变量。 getprop / setprop也不起作用。
我有类似的问题,发现从控制台传递一些参数的最简单方法是执行以下操作:
echo "12345" > /sdcard/myapp/args/AP
然后从Java中读取此文件。