gpt4 book ai didi

android - 如何更改 Room 数据库的默认位置?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:42:18 30 4
gpt4 key购买 nike

我想更改 Android 房间数据库的位置。我知道数据库在文件系统中,我需要获得 root 权限,但我不想对我的手机进行 root。

想法是将数据库位置更改为SD卡,并且无需root我的手机即可访问它

最佳答案

只要把位置路径放在数据库的名字里就可以了。
即:

AppDatabase db = Room.databaseBuilder(getApplicationContext(),
AppDatabase.class, "database-name").build();

将路由器放在数据库名称中。
即:

 AppDatabase db = Room.databaseBuilder(getApplicationContext(),
AppDatabase.class, "/storage/emulated/0/folder/database-name").build();

不要忘记给应用程序写权限

谢谢@vitidev

更新

如果您的目标是 Android 10 或更高版本,请在应用的 list 文件中将 requestLegacyExternalStorage 的值设置为 true:

<manifest ... >
<!-- This attribute is "false" by default on apps targeting
Android 10 or higher. -->
<application android:requestLegacyExternalStorage="true" ... >
...
</application>
</manifest>

关于android - 如何更改 Room 数据库的默认位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48645801/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com