sqlite3 安卓 adb shell 中的分段错误



当我在adb shell中使用sqlite3时,错误"分段错误":

shell@android:/data/data/com.yh.web/databases $ ll
ll
-rwxrwxrwx app_106  app_106     12288 2013-09-16 12:33 webview.db
-rwxrwxrwx app_106  app_106     32768 2013-09-16 12:33 webview.db-shm
-rwxrwxrwx app_106  app_106     12608 2013-09-16 12:33 webview.db-wal
shell@android:/data/data/com.yh.web/databases $ sqlite3 webview.db
sqlite3 webview.db
[1] + Stopped (signal)     sqlite3 webview.db
shell@android:/data/data/com.yh.web/databases $
[1] + Segmentation fault   sqlite3 webview.db

sqlite3 起初在我的手机中不存在,我从 Android 虚拟机中提取它,然后将其推送到我的手机上。 解决方法 为什么当我尝试使用 adb shell 打开数据库时,我在有根的 Nexus One 上收到"sqlite3:未找到"错误?

出了什么问题,我该如何解决,请帮助我,谢谢!

sqlite3 的版本是基于特定版本的 Android 构建的。它必须与手机上的Android版本相匹配。您可以在以下答案中获取有关sqlite3的更多信息:Android中使用的SQLite版本?

编辑:

假设您具有root访问权限,则可以从Google Factory映像中查找与您的Android版本匹配的sqlite二进制文件。如果这不起作用,您可以使用匹配版本的 CyanogenMod 并从中提取sqlite二进制文件执行类似操作。我认为Android 4.0.4与CM 9.1相匹配。你可以看看 http://en.wikipedia.org/wiki/CyanogenMod#Version_history .我认为这应该足以让你开始。不过,我不保证sqlite二进制文件适用于您的手机。

最新更新