如何在Android中访问Sqlite数据库?
我可以在模拟器中使用adb shell命令访问我的sqlite数据库。但我的HTC Desire手机却无法做到这一点。它抛出一些权限被拒绝的消息。是否有任何可能访问这些数据库以进行调试。有什么想法吗如何在Android中访问Sqlite数据库?,android,sqlite,Android,Sqlite,我可以在模拟器中使用adb shell命令访问我的sqlite数据库。但我的HTC Desire手机却无法做到这一点。它抛出一些权限被拒绝的消息。是否有任何可能访问这些数据库以进行调试。有什么想法吗 提前感谢。我只能看到两个选项: 获取对设备的root访问权限 编写特殊的过程,将数据库复制到SD卡(只需使用SQLite API逐个记录) 也可以在命令提示符/终端中键入以下内容 如果您的应用程序包是com.example.dbtest,并且数据库名为sqlite.db adb shell run
提前感谢。我只能看到两个选项:
也可以在命令提示符/终端中键入以下内容 如果您的应用程序包是com.example.dbtest,并且数据库名为sqlite.db
adb shell
run-as com.example.dbtest
cat databases/sqlite.db > /sdcard/sqlite.db
exit
exit
adb pull /sdcard/sqlite.db /path/to/place/file
(如果将最后一个参数留空,它将与adb放在同一目录中)
这不需要根目录,也不需要编写脚本来从应用程序中删除任何文件
您还可以使用流读写器将其复制到SD卡。不要像barmaley建议的那样逐行复制,因为这可能会掩盖错误。您不需要rootor导出数据库。您可以使用下面的库直接从应用程序管理android数据库 它是一个单独的java活动文件,只需将java文件添加到源文件夹中,您就可以查看应用程序数据库中的表,更新、删除、向表中插入行。从应用程序中的所有内容 开发完成后,从src文件夹中删除java文件,即它 它帮了我很多。希望它也能帮到你
您可以在此处查看1分钟的演示:数据库在哪里?在/数据/数据中?如果手机没有根目录,您将无法访问。在这种情况下,您需要先让应用程序将其复制到SD卡。您的数据库存储在哪里?如果存储在SD卡上,则需要使用权限android.permission-group.STORAGE“在清单中。@EboMike:好的,那么我如何从手机复制应用程序?@Mudassir:我已经将我的数据库存储到我的应用程序中了。如果您已经将数据库存储在内部存储器中,那么它应该很容易访问。”。您应该从一开始就检查数据库逻辑。请详细说明您的答案。如何获取我手机的根访问权限。每部手机都是不同的。谷歌“根”为您的手机型号。例如CyanogenMod是一款流行的根ROM,可以在几种流行的手机上运行。请告诉我根手机的步骤或指导原则?让我再写一遍。每个电话都不一样。每个手机都有不同的步骤。根据您拥有的手机,您需要采取不同的步骤。在任何手机上都没有通用的步骤。这取决于你的手机。请使用谷歌搜索与您的特定手机相关的步骤。输入您的手机型号名称和“root”,您可能会找到适用于特定手机的步骤。此答案应位于顶部+1 :)