如何将SQLite数据库从Mac推送到非root设备?

时间:2017-08-03 16:42:21

标签: android sqlite

如何将SQLite数据库从我的Mac推回到我的应用程序覆盖旧数据库?

我想要最简单和最新的答案:

  • Pixel上没有SD卡 - 因此没有SD卡解决方案。
  • 设备未植根,不会。没有根解决方案。
  • 如果可能的话,首先使用资源管理器/命令行方式
  • 作为最后的手段,采用程序化方式拉动它

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我回答了自己的问题。此解决方案适用于非root设备(即使没有SD卡)!您的应用中无需代码。两者都来自终端:

将SQLite数据库从您的应用程序拉到Mac

首先进入你希望db出现的目录:

adb -d shell "run-as your.package.name cat databases/source_database_name" > target_database_name

将您的新/修改后的SQLite数据库从Mac推回到您的应用

adb push database_name /sdcard/database_name
adb shell
run-as your.package.name
cat /sdcard/database_name > databases/database_name

对于像我这样希望在Mac上快速创建/编辑SQLite数据库并轻松地来回发送它们的开发人员来说,这个解决方案似乎更具可持续性和可重复性。