Android连接数据库一般有两种方法 (1)通过服务器连接,利用服务器对数据库进行增删改查等操作,这是最常用的方式。学有余力的小伙伴可以去查阅《Android和PHP开发最佳实践》这本书,它以一个完整的微博应用项目实例为主线,由浅入深地讲解了Android客户端开发和PHP服务端开发的思路和技巧。介于本人是一个Tomcat和PHP都不会的废物,因此放弃了这种方式,采取了另一种方式; (2)在Android内部直接访问MySQL数据库。这种方式非常耗手机内存,而且容易被反编译造成安全隐患,所以在实际项目中不推荐使用。本文将介绍直接访问的方法以及一些可能会遇到的问题。 准备 想要在Android工程中实现直接连接MySQL的话需要先导入jar包。在main文件夹下新建一个名为libs的文件夹,将jar包添加到里面。 添加好之后右击,选择Add As Library… 之后在build.gradle文件中会出现: 这就说明依赖已经导入成功了。 一定要记得在权限列表AndroidMainfest.xml中添加请求访问网络的权限 ![]() 接下来就可以开心的访问数据库了 定义DbUtil类来进行数据库的访问 简单的写一个布局用来进行数据库访问的测试 跟之前java开发一样,在活动中写一个方法来进行数据库的访问 这是错的!!! 运行程序,在EditText中输入数据库中的设置好的账号和密码,点击登录 然后,果不其然的。。。失败了。。。 报了一个错"com.mysqljdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server."大概意思是数据库连接驱动版本太低,要我提高MySQL数据库连接驱动的版本。 但是据了解Android直接访问数据库最高只能使用MySQL 5.+版本,换成MySQL 8.+后会出现更奇怪的错误。 想了好久,终于意识到访问数据库是一个耗时操作,直接放在主线程中跑肯定会出问题。 于是便有了一下版本,将数据库访问放到一个子线程中,使用handler通知主线程更新UI 正确操作 运行程序,在EditText中输入数据库中的设置好的账号和密码,点击登录 访问成功,ヾ(✿゚▽゚)ノ撒花 |
|
来自: 3克拉的Anran > 《公众号:omga》