利用sqlite3 调试 Android 数据库

大致过程和中间遇到的一些问题 记录如下

利用Android studio开发

1.打开cmd,输入adb.exe shell 

如果提示 adb无法识别,说明环境变量未配置,需要输入adb.exe的完整目录,或者配置环境变量。

执行成功 应该是 这行 shell@**********:/$ 

adb.exe 的路径查看(在sdk下面的platform-tools下面)

2 查看文件时,提示opendir failed, Permission denied

说明需要管理员权限,输入su 如果提示 not found,说明手机没有root用户,去下载一个一键root的工具,在手机上安装执行完就可以了(我下的是kingroot)

执行完毕 输入su  $变成#了

3.到了具体的数据目录下,输入sqlite3 + 数据库名称。

如果提示 sqlite3 not found  说明手机没有带sqlite3 工具(正常的在 /system/xbin/能找到这个文件的)

4 安装sqlite3(如果3 通过,跳过这步)

首先 从网上下载一个 对应安卓版本的sqlite3.(或者从模拟器里面相关目录下找到这个文件,但我不知道这个目录在哪...)

把这个文件放到 手机的目录下

然后下载一个 RE文件管理的app 将system 挂载为可读写,然后将sqlite3 放到 system/xbin/下面

 授权:chmod 777 /system/xbin/sqlite3

5.输入sqlite3 + 数据库名称

看到 sqlite> 说明 已经进入到sqlite命令模式

接下来输入要执行的命令就可以了。

但是我遇到一个问题,输入的命令不会反显在屏幕上,查了一些资料,说是su导致的。

最后的解决方案 将数据库的那一个目录全都授权777(chmod)在l利用普通管理员权限操作 就可以看到命令了...

注意 db文件和起临时文件一定都要有读写权限,否则会有unable to open database file 的问题

退出sqlite 是 .quit 

退出su 是exit

 

$ adb shell

如果遇到这个报错,需要手机重新授权一下就好了
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
 

 

另外 我看网上有种方法

是利用第三方插件,来查看数据库

debugCompile 'com.amitshekhar.android:debug-db:1.0.0'

但是 我利用这种方式,在浏览器数据网址后,网页是空白的(换了端口也不好使) 不知道怎么回事。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值