Android ansroid.os.SystemProperties在哪里存储其键/值?
众所周知,我们可以使用Android ansroid.os.SystemProperties在哪里存储其键/值?,android,Android,众所周知,我们可以使用android.os.SystemProperties.set(String,String)和android.os.SystemProperties.get(String,String)设置和获取值,我的问题是这些对存储在哪里?Sqlite数据库还是纯文本文件?如果是这样,我们可以在哪个目录中找到它们?因为Android基于Linux,所以无法从文件或数据库或类似的东西中读取这些设置,因为它不存在 引导设备时,内核将环境变量列表存储到内存中 由应用程序或您启动的每个进程都从
android.os.SystemProperties.set(String,String)
和android.os.SystemProperties.get(String,String)
设置和获取值,我的问题是这些
对存储在哪里?Sqlite数据库还是纯文本文件?如果是这样,我们可以在哪个目录中找到它们?因为Android基于Linux,所以无法从文件或数据库或类似的东西中读取这些设置,因为它不存在
引导设备时,内核将环境变量列表存储到内存中
由应用程序或您启动的每个进程都从其父进程克隆变量,并可以定义自己的变量
在Linux中,您可以访问存储在/proc/'pid'/environ
中的虚拟文件,但1。这确实是不推荐的。android文件系统中似乎没有这样的文件
如果我的假设有误,请告诉我:)对于
persist.xxx
属性,它存储在/data/property下,属性名称作为文件名。对于其他非持久属性,它存储在共享内存中。对于阅读问题并感到疑惑的人,android SDK中没有android.os.SystemProperties
类。这是Android的内部部分。我认为我们无法通过编程方式访问该目录…目前我将我的私有财产存储在Settings.Secure table中,但不幸的是,如果我加密手机(ics支持此功能),当手机启动时,该表(/data/date/com.Android.providers)还不存在,所以属性总是等于0(默认值),所以我想将其存储在SystemProperties中,有人知道这种方式是否可行吗?但是请注意,当android初始化时,这个地方是由另一个进程编写的。(我在找地方)。所以这些修改过的文件会在重启设备时重置。我认为这个答案并没有回答这个问题,它指的是环境变量,而不是用“setprop”设置的android属性或用“getprop”读取的android属性。