关于系统属性

我知道如何从应用程序层访问Android系统属性。 在框架层
android.os.SystemProperties
类负责 得到所有的财产。但在内部它会调用一些C代码来获取 像
native_get(key,value)
这样的属性。 有人请告诉我哪个文件基本上是在C代码中引用的?     
已邀请:
该方法的本机代码位于文件
android_os_SystemProperties.cpp
中。它将它们委托给Bionic libc库
/bionic/libc/bionic/system_properties.c
,它从共享内存中读取属性值。 以下是“Android属性系统”文章的引用(如果您希望了解Android属性的工作方式,我建议您阅读所有内容):   init进程将从以下文件加载属性:
/default.prop  
/system/build.prop
/system/default.prop
/data/local.prop
     下一步是开始物业服务。在此步骤中,将创建一个unix域套接字服务器。此套接字的路径名是
"/dev/socket/property_service"
,这是其他客户端进程所熟知的。    最后,init进程调用poll以等待套接字上的connect事件。      在消费者方面,它初始化libc(
bionic/libc/bionic/libc_common.c __libc_init_common function
)。它将从环境变量中检索fd和size,并将共享内存映射到自己的空间(
bionic/libc/bionic/system_properties.c __system_properties_init function
)。之后,libcutils可以读取属性,就像消费者的正常内存一样。     
这些不是SDK API的一部分。     

要回复问题请先登录注册