为什么在Kindle Fire设备上调试Android应用程序时无法查看本地SQLite数据库?

3
我正在开发一个安卓应用程序并在Kindle Fire设备上进行调试。我已经实现了所有需要在Kindle Fire上调试的步骤,一切都运行良好。但是我的问题是我无法在设备上查看我的应用程序的sqlite数据库。我使用这个插件http://www.tylerfrankenstein.com/browse-android-emulator-sqlite-database-eclipse来查看模拟器上的SQLite数据库,现在我想在设备上做到这一点。但是当我进入文件浏览器中的数据文件夹时,我看到它是空的: 我该如何解决这个问题并在Kindle Fire设备上使用SQLIte浏览器?提前感谢您的帮助!

https://dev59.com/h2kw5IYBdhLWcg3wSorA - Tomislav Novoselec
1个回答

1

生产硬件上无法通过DDMS访问内部存储中的文件。

您可以尝试使用adb shell run-as命令,然后使用命令行adb客户端来提取数据库:https://dev59.com/p2w05IYBdhLWcg3w72XN#8434477

adb shell
run-as com.corp.appName
cat files/myFile.txt > /mnt/sdcard/myFile.txt

@AlexanderKaraberov:如果它能正常工作,那是肯定的。这个功能在Android 2.2及以上版本的普通Android设备上都可以使用,因此理论上它应该可以在所有Kindle Fire设备上运行。但是,亚马逊对Android进行了修改,所以他们有可能会破坏这个功能。 - CommonsWare
@CommonsWare 的 run-as 在4.3设备上无法工作。我的Nexus 4和Nexus 7都是如此。问题在这里列出:https://code.google.com/p/android/issues/detail?id=58373 - b-ryce

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接