Android真机没有sqlite3数据库的解决办法

简介: Android真机没有sqlite3数据库的解决办法

在我们在安卓真机上做sqlite3的时候,会发现很多手机是不内置sqlite3的,这个时候我们需要自行下载传送到手机上

默认读者的手机拥有root权限并有类似终端模拟器的交互窗口获取root权限

  uname -a//在终端中输入,寻找自己的系统版本号

对应自己的版本号,可以在 https://github.com/tech128/sqlite3 寻找自己的对应的sqlite3数据库,一定要对应好否则将不能正常运行,若是此处找不到,可根据自己的uname在github上搜寻对应的sqlite3

由于我们需要把sqlite3的二进制程序传送到/system/xbin内,所以应该将/system以可读写的方式重新挂载,默认是只读的

  在DOS中转到adb的目录下,我的是C:\Program Files (x86)\Android\android-sdk\platform-tools
  adb root //执行命令,让adb获取root权限,前提是手机开启了root权限并在开发者模式打开USB调试
  adb remount //(为系统文件/system, /vendor,/oem加上读写权限)
  有的会出现挂载设备忙的问题(busy)导致这一步失败
  解决方案:
  adb disable-verity
  adb reboot之后就能够remount成功,
但是adb disable-verity具体做了什么呢?
官方给出adb disable-verity的解释是这样的:disable dm-verity checking on USERDEBUG builds
大致意思就是不使用dm-verity验证userdebug版本.可以理解为userdebug版本有些system分区被verity标识.
所以会出现上述错误是因为某些分区被系统标识,必须要验证数据签名,我们只需要忽略验证就行了.
上面可以看到签名是否需要验证主要是由dm-verity决定的,那它又做了什么呢?
它的作用和工作流程可以移步 http://blog.csdn.net/u011280717/article/details/51867673
remount成功之后就可以把sqlite3传入手机了
remount的另一种方式执行mount | grep /system
看到下面这个/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel…
这个ro就是Read-Only只读的意思继续执行命令
mount -o remount,rw -t ext4 /dev/block/platform/msm_sdcc.1/by-name/system /system
这种方式是在adb shell中执行,可以找到/system分区的具体挂载设备(有差异,根据情况变更)
adb push E:\sqlite3 /system/xbin
adb shell //进入shell确认sqlite3是否在qizhong
sqlite3 //试试运行是否成功
相关文章
|
22天前
|
API 数据库 C语言
【C/C++ 数据库 sqlite3】SQLite C语言API返回值深入解析
【C/C++ 数据库 sqlite3】SQLite C语言API返回值深入解析
163 0
|
1月前
|
网络协议 关系型数据库 MySQL
如何实现无公网ip远程访问本地安卓Termux部署的MySQL数据库【内网穿透】
如何实现无公网ip远程访问本地安卓Termux部署的MySQL数据库【内网穿透】
|
2月前
|
存储 监控 安全
内网屏幕监控软件的数据存储与管理:使用SQLite数据库保存监控记录和配置信息
在当今数字化时代,安全和监控在企业和组织中变得至关重要。内网屏幕监控软件作为一种关键工具,帮助组织监视员工的活动并确保信息安全。这种软件不仅需要高效地记录和管理监控数据,还需要能够方便地进行配置和调整。本文将讨论如何使用SQLite数据库来保存监控记录和配置信息,并介绍如何通过自动化机制将监控到的数据提交到指定网站。
148 2
|
4天前
|
SQL 关系型数据库 数据库
Python中SQLite数据库操作详解:利用sqlite3模块
【4月更文挑战第13天】在Python编程中,SQLite数据库是一个轻量级的关系型数据库管理系统,它包含在一个单一的文件内,不需要一个单独的服务器进程或操作系统级别的配置。由于其简单易用和高效性,SQLite经常作为应用程序的本地数据库解决方案。Python的内置sqlite3模块提供了与SQLite数据库交互的接口,使得在Python中操作SQLite数据库变得非常容易。
|
1月前
|
关系型数据库 数据库 C++
嵌入式数据库sqlite3【基础篇】基本命令操作,小白一看就懂(C/C++)
嵌入式数据库sqlite3【基础篇】基本命令操作,小白一看就懂(C/C++)
|
1月前
|
存储 SQL 数据库
django如何连接sqlite数据库?
django如何连接sqlite数据库?
38 0
|
1月前
|
存储 SQL 数据库
【Android 从入门到出门】第六章:使用Room数据库并测试
【Android 从入门到出门】第六章:使用Room数据库并测试
29 4
|
1月前
|
网络协议 关系型数据库 MySQL
安卓手机termux上安装MariaDB数据库并实现公网环境下的远程连接
安卓手机termux上安装MariaDB数据库并实现公网环境下的远程连接
|
2月前
|
数据库 Android开发 数据库管理
【Android】使用android studio查看内置数据库信息
【Android】使用android studio查看内置数据库信息
61 0
|
14天前
|
SQL 数据可视化 关系型数据库
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)