8

众所周知,我们可以使用android.os.SystemProperties.set(String, String)andandroid.os.SystemProperties.get(String, String)来设置和获取值,我的问题是这些<key value>对存储在哪里?Sqlite 数据库还是纯文本文件?如果是这样,我们可以在哪个目录找到它们?

4

2 回答 2

6

对于persist.xxx属性,它以属性名称作为文件名存储在 /data/property 下。对于其他非持久属性,它存储在共享内存中。

于 2014-01-16T03:26:37.253 回答
2

因为 Android 基于 Linux,所以无法从文件或数据库或类似的东西中读取这些设置,因为它不存在。

在启动设备时,内核会将环境变量列表存储到内存中。

每个由应用程序或您启动的进程都从其父进程克隆变量,并且可以定义自己的变量。

在 Linux 中,您可以访问存储在其中的虚拟文件,/proc/'pid'/environ但 1. 不建议这样做,并且 2. 在 android 文件系统中似乎没有这样的文件。

如果我的假设有误,请告诉我:)

于 2012-07-03T12:52:39.710 回答