Android linux环境变量

Jak*_*ake 7 linux android environment-variables

我通过adb shell在我的android设备上的/ proc目录中查看,并查看了其中一个进程的environ文件的内容.环境变量列表如下:

  • 路径
  • LD_LIBRARY_PATH
  • ANDROID_BOOTLOGO
  • ANDROID_ROOT
  • ANDROID_ASSETS
  • ANDROID_DATA
  • ANDROID_STORAGE
  • ASEC_MOUNTPOINT
  • LOOP_MOUNTPOINT
  • BOOTCLASSPATH
  • 外部存储
  • EMULATED_STORAGE_SOURCE
  • EMULATED_STORAGE_TARGET
  • ANDROID_PROPERTY_WORKSPACE
  • ANDROID_SOCKET_zygote

这个列表与Linux中看到的环境变量不同.当我在我的ubuntu-12.04上看到某个进程的environ文件时,我看到一个更长且非常不同的列表(只有PATH是相同的).

我有以下问题:

  • Android在哪里定义环境变量?

    由于Android中的environ文件与linux不同,因此必须在某处进行更改

  • 有没有办法为这些变量提供默认值?

    我假设init可能有默认值,forked进程继承值,并且在分叉后某处可能修改值(如果有人知道这些代码的实际位置,请分享)

  • 列表中每个环境变量的用途是什么?

    我理解从Linux派生的PATH和LD_LIBRARY_PATH变量.其他人怎么样?他们什么时候用?Android应用程序(可能是NDK)将它们用于什么?

谢谢.

LtW*_*orf -4

Android 使用linux,但它不是GNU/Linux,所以很多东西都不同。