我想将数据直接插入到我的应用程序的 sqlite 数据库中,但我无法在 android studio 路径的任何位置找到它,即使在我的根路径上也是如此:
$sudo find / -type f -name 'myapp.db'
我知道有人问过几个类似的问题before但是 Windows 的答案在 Ubuntu Linux 上对我没有帮助。非常感谢您的帮助。
最佳答案
Android Studio 不会将数据库本地存储在您的计算机中。数据库仅存在于设备中,每次您部署到新设备时,您的数据库都将在该新设备中创建新的。这就是为什么您无法在计算机中找到它的原因。这是数据库在设备中的位置:
/data/data/full_qualified_java_package_name/databases/database_name.db
现在,如果您想直接插入数据,可以使用 Android Studio 中的终端并使用 ADB 从模拟器中拉出数据库,修改它,然后将其推回。哎呀,我相信如果您足够了解在 Linux 中,您可能可以将需要的内容插入其中,而无需将其从设备中拉出。以下是 Android Studio 终端的一些示例命令:
~/Android/Sdk/platform-tools/adb devices
获取设备号,然后:
~/Android/Sdk/platform-tools/adb -s emulator-#### pull /data/data/full_qualified_java_package_name/databases/database_name.db <local-filepath>
要将其发回,只需:
~/Android/Sdk/platform-tools/adb -s emulator-#### push <local-filepath> /data/data/full_qualified_java_package_name/databases/database_name.db
示例:
~/Android/Sdk/platform-tools/adb -s emulator-5554 pull /data/data/com.danielkaparunakis.stackoverflowquestions/databases/Questiondatabase.db /Users/DanielKaparunakis/Desktop
补充提示:如果你这样拉的时候留空:
~/Android/Sdk/platform-tools/adb -s emulator-5554 pull /data/data/com.danielkaparunakis.stackoverflowquestions/databases/Questiondatabase.db
它会自动将其拉到项目的根文件夹中。
关于android - android studio 在 Linux dev 机器上将 sqlite db 保存在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37363924/