Android Studio打开Android Device Monitor中的DDMS没有内容显示

Android Studio Version(2.2.2 || 2.2.3)
Android Version(7.1.1 || 7.0)
以前写过SQLite的文章,那时候好像是用Android 6.0,DDMS打开很正常。然后换了电脑,重新安装了Android Studio,模拟器的系统也升到了Android 7.1.1。就在今天调试SQLite的时候发现,打开DDMS里面什么都没有???
Android Studio打开Android Device Monitor中的DDMS没有内容显示_第1张图片
这下就尴尬了,于是想到用adb pull去把文件拷贝到桌面。
Android Studio打开Android Device Monitor中的DDMS没有内容显示_第2张图片
如图,第一次报错,应该是没有权限(真机需要用adb、DDMS查看文件,需要root,否则跟当前情况差不多)。
于是加了一条

adb root

再把上面的命令重复执行一遍,OK!搞定。
当然,还有一种更省力的方法,SQLite Expert Professional都不用下载,adb(1.0.36)自带sqlite3工具用于数据库的查看。
Android Studio打开Android Device Monitor中的DDMS没有内容显示_第3张图片
进到databases目录下,用sqlite3打开db文件,用.tables查看下属表格,select查询整张表
注意:select * from table; 后面必须加“;”,否则你只会看到 …
Android Studio打开Android Device Monitor中的DDMS没有内容显示_第4张图片
当然,习惯了SQLite Expert Professional可能感觉别扭,可以用.header on和.mode column,然后重新select让表格打印成你熟悉的样子。
Android Studio打开Android Device Monitor中的DDMS没有内容显示_第5张图片
对照一下SQLite Expert Professional,一模一样。


这里再说一句,有的人cursor.getColumnIndex(“name”)以后,想直接

cursor.getString(cursor.getColumnIndex("name"));

这时候程序会崩溃,因为cursor的光标默认在第一条记录之前的位置,所以直接get会出错,没东西可以取。这时候需要

cursor.moveToNext();

将光标移到下一个位置,当然这个用在while里面比较好,如果不循环也可以用

cursor.moveToFirst();

这样才能取值。

你可能感兴趣的:(Android)