从平台代码访问android.provider.Settings.System值

时间:2011-06-08 16:08:54

标签: java android java-native-interface native android-2.3-gingerbread

有没有办法从平台代码访问Settings.System(即持久值)?

我们的想法是从存储区域读取一些特定值,以便在Settings.System中定义数据(如果存在)。

所以我认为它像:

Manager.java - >(添加数据) - > [Settings.System database] - >(拉出数据) - > DataManager.cpp

Manager.java和DataManager.cpp在不同的进程中彼此完全分开运行。

也许有人可以解释持久值如何在低水平上运作或指向正确的方向?

干杯。

编辑:好的,所以data / data / com.android.providers.settings / databases / settings.db下有一个db文件

2 个答案:

答案 0 :(得分:1)

抱歉,没有原生API,您需要使用JNI。

答案 1 :(得分:1)

我找到了一种方法来做到这一点。 您可以通过执行以下命令找到设置数据库:

   $ adb shell
   $ su
   # find data -name "settings.db" -print
   data/data/com.android.providers.settings/databases/settings.db

然后使用sqlite3读取本机级别的值。