我在 Ubuntu 15.10 上运行 SqliteStudio 3.0.7。在 4.4.4 ROM (sdk 19) 上,我似乎无法让 USB/sqlite3 模式适用于 Android Studio (2.1.1) 模拟器,也不适用于 Genymotion。
AFAIK 该应用程序是在调试模式下构建的;我只使用 Studio 的“调试”按钮运行它,并且可以使用adb shell
sqlite3 命令访问数据库。
在 Android Studio 模拟器上,我可以在“应用程序”下拉菜单中看到我的应用程序,但数据库下拉菜单保持为空。使用 运行sqlitestudio -d
并打开调试控制台后F12
,我看到以下控制台错误:
DEBUG: Warning from notify manager: "Cannot connect to device emulator-5554, because the application ....MyApp is not debuggable."
DEBUG: Could not open db connection "android://emulator-5554:@/my.corp.myapp/"
使用 Genymotion,数据库下拉列表已正确填充,但在以下屏幕中,我的 Android 数据库 URL 显示为网络而不是 USB。“测试连接”按钮仅显示红色的错误感叹号图标。网址如下;控制台中不会生成任何错误消息。
android://192.168.56.101%3A5555:@/my.corp.myapp/myapp.db
感谢您的想法和建议!
更新:
在硬件设备(而不是模拟器)上再次尝试报告我的应用程序不可调试 - 但它是;我正在调试它。SqliteStudio 调试日志如下:
[13:35:43.083] WARNING: Cannot connect to device "034c1ab776f500000000" / "my.corp.myapp.debug"
Details:
"run-as: exec failed for echo Error:Permission denied"
[13:35:43.083] DEBUG: Warning from notify manager: "Cannot connect to device 034c1ab776f500000000, because the application my.corp.myapp.debug is not debuggable."
[13:35:43.083] DEBUG: Could not open db connection "android://034c1ab776f500000000:@/my.corp.myapp.debug/"