我想知道:您能否将您在 Android 设备上使用的数据库转移到您的开发环境中的虚拟 Android 设备上?
我正在使用一个程序在我的三星 Galaxy S 上输入书籍。从这个程序中我可以下载源代码,这对我了解 Android 开发周期的各个方面有很大帮助。
我可以很好地编译程序并将其运行到 Android 虚拟设备上。但是,我可以将我在手机上创建的数据库“下载”或“传输”到我的电脑上而不是虚拟设备上吗?
我想知道:您能否将您在 Android 设备上使用的数据库转移到您的开发环境中的虚拟 Android 设备上?
我正在使用一个程序在我的三星 Galaxy S 上输入书籍。从这个程序中我可以下载源代码,这对我了解 Android 开发周期的各个方面有很大帮助。
我可以很好地编译程序并将其运行到 Android 虚拟设备上。但是,我可以将我在手机上创建的数据库“下载”或“传输”到我的电脑上而不是虚拟设备上吗?
您可以使用 Android 调试桥
Android Debug Bridge (adb) 是一种多功能工具,可让您管理模拟器实例或 Android 驱动设备的状态。
您可以在 /platform-tools/ 中找到 adb 工具。
您将需要pull
在 ADB 上使用该命令。
它将指定文件从模拟器/设备实例复制到您的开发计算机。
如果该剂量对您有用,请使用 sqlite3 工具。
sqlite3 工具包含许多有用的命令,例如.dump
打印表的内容和.schema
打印现有表的 SQL CREATE 语句。
您可以使用上述命令获取开发计算机上的内容和架构。从那里您可以在您的计算机上重建数据库。
我希望它有所帮助。
它相当困难。问题是手机上的数据库在您的应用程序之外无法访问。你说你有这个程序的源代码,但是听起来你没有构建你在手机上运行的代码版本。(如果您是,那么您可以修改代码以将数据库文件 /data/data/myapp.com/databases/ 复制到 sd 卡上,然后使用 adb 取回文件)。请注意,从相同的代码重建相同的应用程序不会被 Android 接受为相同的应用程序,应用程序已签名。
如果您的手机是/可以植根,我相信您应该能够再次访问该文件。否则(希望是矛盾的)我认为你的填充。
模拟器的限制要少得多,您可以在其中复制文件,也可以从中复制文件,这应该不是问题。