高效学习Android项目开发 | ​数据库调试(附视频限免)
admin
2022-05-12 08:13:58
0

原标题:高效学习Android项目开发 | ​数据库调试(附视频限免)

介绍多种调试、管理SQLite数据库的方法。

01

数据库调试

在开发数据库相关应用时少不了访问数据库以获取开发相关信息。早期最常用的方式是使用adb shell命令(如果有多台设备就使用adb -s emulator-5554 shell命令,具体的设备名称可以使用adb devices命令获取)。操作步骤如下:

(1) 输入adb shell命令进入Android模拟器命令行界面。

(2) 输入su命令进入root模式(真实的Android设备要进入root模式以后才行)。

(3) 输入cd /data/data/com.xiaj/databases/命令进入mydb.db所在目录。

(4) 输入sqlite3 mydb.db命令进入mydb.db数据库。此时提示符变为sqlite>。

(5) 输入.table命令可以查看数据表。注意,table前有一个点。

(6) 输入“select * from Score;”语句可查询表记录。

输入命令级显示结果如下所示:

可以输入inert、delete、update命令对数据表中的记录执行增、删、改操作。但此种方法有两个缺点:

(1) 进入/data/data目录需要root权限。真实的Android设备需要刷机才能获取root权限,但也意味着失去厂商保修资格。

(2) 当输入的SQL命令中包含中文时会显示为乱码(早期版本的Windows 10还需先运行chcp 65001命令才能在查询结果中显示中文,最新版本的Windows 10无须再输此命令)。

简单的替代方法是开发人员在App中单独开发一个Activity,输入预置的SQL语句来查询数据。但如果面对的是复杂多样的查询或数据表结构改变操作,此方法有点力不从心。此时各式各样的插件应运而生,有的插件在Android应用中提供Web服务,开发人员可以通过浏览器访问数据库,此类插件的实时交互性有待改善。有的插件在Android中提供中转服务,再由客户端提供图形化实时交互操作界面,典型的代表就是SQLiteStudio。以下以SQLiteStudio方式讲解实时管理Android设备上的SQLite数据库。

打开SQLiteStudio应用程序,选择“工具”→“打开配置对话框”菜单,如图5-19所示。

图5-19选择“工具”→“打开配置对话框”菜单

在弹出的配置对话框中选择“插件”选项,选中Android SQLite复选框,如图5-20所示,单击OK按钮。

图5-20选中Android SQLite复选框

此时“工具”菜单中多出一项Get Android connector JAR file,如图5-21所示。

单击此菜单项下载SQLiteStudioRemote.jar文件。

图5-21下载.jar文件

将下载的SQLiteStudioRemote.jar文件放到Android项目的libs目录下(如果没有就新建libs目录)。在app目录下的build.gradle文件中添加如下配置(具体路径视文件所在路径而定):

在Activity的onCreate方法中添加以下代码:

此时运行Android项目,SQLiteStudio的服务就同步启动。

最后配置SQLiteStudio连接App的数据库。在SQLiteStudio软件中选择“添加数据库”菜单,在“数据库”对话框中选择数据类型为Android SQLite。单击Android database URL图标,在弹出的对话框中选中USB cable-port forwarding单选按钮,如图5-22所示,单击OK按钮。

图5-22配置数据库连接

连接数据库成功后就可以实时查看、修改SQLite数据库,如图5-23所示。

图5-23SQLiteStudio运行界面

SQLiteStudio软件的数据库管理功能非常完善,完全能满足开发要求,连接真实的Android设备也没有问题。

Android Studio从4.1版本开始引入Database Inspector功能,可以连接API level 26以上版本的SQLite数据库连接。选择View→Tool Windows→Database Inspector菜单,在下方出现Database Inspector选项卡,运行App程序,出现如图5-24所示的界面。界面左边显示数据库及所包含的表。单击 按钮,界面右侧出现查询选项卡,在文本框中输入SQL语句,单击Run按钮执行相应的SQL命令。数据的变更可以实时显现(单击Run按钮可实时查询表记录。如果选中图5-24的Live updates复选框,App中对表数据的修改会自动更新显示)。此方案是目前连接数据库并实现实时查询操作的最简单方案。但功能上与SQLiteStudio方案相比还有较大的差距(如在图形化界面中修改表结构等)。

图5-24Database Inspector

【注】

目前的Android Studio版本使用Database Inspector功能时,Activity中的onCreate方法中最好保持数据库连接打开。如果onCreate方法中对数据库执行了关闭操作,需要后续执行打开数据库操作才能显示出数据库和表。从实际运行看,程序启动后过几秒才连接到数据库,在onCreate方法中关闭数据库连接会导致Database Inspector无法找到数据库。

实例讲解

Android项目开发基础与实战

精彩回顾

教学辅助系统使用

Android项目开发相关Java基本概念

约束布局

TextView控件

Button控件

RadioButton控件

AlertDialog对话框

Activity

Broadcast

02

视频讲解

扫码即可观看视频,限时免费3天

03

参考书籍

《Android项目开发基础与实战(微课视频版)》

作者:夏江

定价:59.9元

内容简介

本书结合作者多年讲授“Android应用软件开发”课程的教学经验,融入Android开发领域新技术,较为全面地介绍了Android应用软件开发的相关知识点和开发技巧。全书共分5章,分别介绍了Android开发环境、Android项目及Java基本概念、Android常用布局、Android常用控件和其他常用编程技术。本书相关案例以Android Studio为开发环境,尽可能使用最新版本SDK命令替代弃用命令,并对控件的版本变化做大致的介绍。本书全面考虑了本科教学的特点,结合作者开发的案例库教学辅助系统,通过精心设计的案例和详尽的讲解、演示,让读者感受体验式教学的魅力。本书适合Android Studio开发人员、Android的入门读者、高等学校学生使用,还可以作为高等院校、相关培训机构的教学用书。

04

精彩推荐

  • 微信小程序游戏开发│猜数字小游戏(附源码+视频)

  • Flink编程基础│Scala编程初级实践

  • Flink编程基础│FlinkCEP编程实践

  • Flink编程基础│DataStream API编程实践

  • Flink编程基础│DataSet API编程实践

  • 数 据分析实战│客户价值分析

  • 数据分析实战│价格预测挑战

  • 数据分析实战│时间序列预测

  • 数据分析实战│KaggleTitanic生存预测

相关内容