【问题标题】:Android Eclipse DDMS - Can't pull file from rooted deviceAndroid Eclipse DDMS - 无法从根设备中提取文件
【发布时间】:2012-04-05 12:33:25
【问题描述】:

我正在扎根的 Nexus S 手机上测试我的应用。感谢this answer 的帮助,我终于可以访问 /data/data 文件夹了。

问题是当我尝试使用 DDMS “从设备中提取文件”时出现此错误:

[2012-03-20 18:15:26] Failed to pull selection
[2012-03-20 18:15:26] (null)

有人知道如何提取数据库的副本以便我可以在 SQLite 编辑器中查看它吗?

【问题讨论】:

标签: android database eclipse sqlite ddms


【解决方案1】:

我发现要提取实际的数据库文件 (my_database.db),您必须在 adb shell 中对该特定文件使用 chmod。因此,您需要明确定义要访问的数据库的路径。

例如,如果数据库文件是 my_database.db,应用程序包是 com.example.database,则需要调用以下代码:

1) 在 cmd 中输入:adb shell
2) 类型:su
3) 在root手机上按“允许”
4) 在 cmd 中输入:chmod 777 /data/data/com.example.database/databases/my_database.db
5) 在 Eclipse 中转到 DDMS
6) 导航到 my_database.db 文件并选择它
7)选择“从设备中提取文件”并选择保存位置

【讨论】:

  • 我必须在通往数据库文件的路上对每个文件夹进行 chmod 777。有什么想法吗?
  • 是的,这通常是您必须这样做的方式。 chmod 777 允许您访问文件夹/文件。如果您以前没有在文件夹上使用过 chmod 777,则无法访问其中的任何内容以继续向下钻取。
  • 谢谢,我只是想确认一下 :)
  • 如何在非root手机上执行此操作?
【解决方案2】:

重新启动一次 Eclipse。希望能解决这个问题

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-20
  • 2011-09-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多