专栏首页Aloys的开发之路Android真机安装sqlite3的方法

Android真机安装sqlite3的方法

Android版本: 4.4.2

PS C:\Users\jiang> adb shell
shell@hwH60:/ $ su - root

# 此时输入sqlite3 发现命令无法使用
root@hwH60:/ # sqlite3
tmp-mksh: sqlite3: not found

# find一下相关文件,确定到底需要安装哪些内容,如果已经找到则不需要安装对应文件
root@hwH60:/ # find . -name "sqlite3"
root@hwH60:/ # find . -name "libsqlite.so"
root@hwH60:/ # find . -name "libsqlite_jni.so"

root@hwH60:/ # exit
shell@hwH60:/ $ exit

# 从https://files.cnblogs.com/files/jiangxinnju/sqlite3.zip处下载文件并解压。

# 将相关文件放到内置存储卡中,为什么不直接放到/system/xbin/和/system/lib/可以参考<http://www.cnblogs.com/jiangxinnju/p/8186390.html>
PS D:\> adb push sqlite3 /storage/emulated/0/
PS D:\> adb push libsqlite.so /storage/emulated/0/
PS D:\> adb push libsqlite_jni.so /storage/emulated/0/

PS D:\> adb shell
shell@hwH60:/ $ su - root

# 为什么需要重新挂载/system分区可以参考<http://www.cnblogs.com/jiangxinnju/p/8186390.html>
root@hwH60:/ # mount -o remount rw /system

# 将需要的文件从内置存储卡中转移到目标目录
root@hwH60:/ # cp /storage/emulated/0/sqlite3  /system/xbin/                              <
root@hwH60:/ # cp /storage/emulated/0/libsqlite.so  /system/lib/
root@hwH60:/ # cp /storage/emulated/0/libsqlite_jni.so  /system/lib/

# 修改对应文件的权限
root@hwH60:/ # chmod 4755 /system/xbin/sqlite3
root@hwH60:/ # chmod 0644 /system/lib/libsqlite.so
root@hwH60:/ # chmod 0644 /system/lib/libsqlite_jni.so

# 执行sqlite3命令,发现已经可以使用
root@hwH60:/ # sqlite3
SQLite version 3.7.11 2012-03-20 11:35:50
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .exit

root@hwH60:/ # exit

# 删除内置存储卡中的文件
shell@hwH60:/ $ rm -rf /storage/emulated/0/sqlite3
shell@hwH60:/ $ rm -rf /storage/emulated/0/libsqlite.so
shell@hwH60:/ $ rm -rf /storage/emulated/0/libsqlite_jni.so

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Oracle中session和processes的设置

    PROCESSES: http://docs.oracle.com/cd/B28359_01/server.111/b28320/initparams188.h...

    用户1221057
  • 解决adb push时出现的"Read-only file system"问题

    出现Read-only file system问题,不是因为文件或者文件夹的权限不对,而是要push的目录对应的分区是以只读方式挂载的,网上给出的解决办法是重新...

    用户1221057
  • [Maven][l10n-maven-plugin]告警[WARNING] No dictionary file under folder

    执行mvn clean package site时报错[WARNING] No dictionary file under folder,详细报错如下:

    用户1221057
  • 算法证明:女生遇到心动的男人一定要追!

    大数据文摘
  • K8S 分布式构建 Docker 镜像的一些小技巧

    崔秀龙
  • Mysql主从延迟解决办法

    1.MIXED模式无索引或SQL慢 在从库上pager grep -v Sleep;show processlist 查看到正在执行的SQL。 解决方...

    MySQL轻松学
  • 编码篇 - NSInvocation的简单使用

    在认识 NSInvocation 之前,iOS开发中我们一般会使用以下两种方式去调用一个方法

    進无尽
  • MJRefresh 封装

    MJRefresh是很好用的一个刷新控件,但是如果在每个ViewController中都加入如下代码

    赵哥窟
  • 细述hbase协处理器

    HBase作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执行求和、计数、排序等操作。比如,在旧版本的(<0.92)Hbase中,统计数据...

    Spark学习技巧
  • 如何在退出Hue后关闭Spark会话

    Hive配置了Spark作为默认执行引擎,在通过Hue执行Hive查询后,退出Hue后Spark的Session并为随着Hue的退出而关闭,操作如下:

    Fayson

扫码关注云+社区

领取腾讯云代金券