eri*_*ung 6 python sqlite perl android adb
Android保存在数据库文件中的设置/data/data/com.android.providers.settings/databases/settings.db.
Android sqlite3用作数据库.我们可以adb用来管理数据库文件.我想知道是否有办法在perl/python脚本中运行所有这些命令以自动执行整个查询过程?
$adb shell
$sqlite3 /data/data/com.android.providers.settings/databases/settings.db
Run Code Online (Sandbox Code Playgroud)
上面的命令将打开设置数据库.然后你将进入sqlite3命令行.
首先检查数据库中存在多少个表.这里列出了结果.
sqlite> .tables
android_metadata bookmarks gservices
bluetooth_devices favorites system
Run Code Online (Sandbox Code Playgroud)
我想要获取的设置(例如volume_alarm)位于"system"表中,.dump命令将列出表中的所有项目.
sqlite> .dump system
BEGIN TRANSACTION;
CREATE TABLE system (_id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT UNIQUE ON CONFLICT REPLACE,value TEXT);
INSERT INTO "system" VALUES(3,’volume_system’,’5?);
INSERT INTO "system" VALUES(4,’volume_voice’,’4?);
INSERT INTO "system" VALUES(5,’volume_alarm’,’6?);
.....
$ select value from system where name ='volume_alarm';
select value from system where name ='volume_alarm'
6
$.quit;
Run Code Online (Sandbox Code Playgroud)
Ale*_* P. 12
要查询特定值:
adb shell sqlite3 /data/data/com.android.providers.settings/databases/settings.db "select value from 'system' where name = 'volume_alarm';"
Run Code Online (Sandbox Code Playgroud)
或者从表中提取所有记录:
adb shell sqlite3 /data/data/com.android.providers.settings/databases/settings.db "select name, value from 'system';"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11309 次 |
| 最近记录: |