java - 保存首选项在 Android 中引发异常
问题描述
我正在尝试使用以下代码在 Android 中保存用户首选项:
import java.util.prefs.Preferences;
class MyClass {
void save() throws Exception {
_prefs.put("NAME","VALUE");
_prefs.flush(); // Throws exception
}
private final Preferences _prefs = Preferences.userNodeForPackage(MyClass.class);
}
...但是“flush”调用会产生以下异常:
W/java.util.prefs: Could not lock User prefs. Unix error code 2.
W/System.err: java.util.prefs.BackingStoreException: Couldn't get file lock.
我猜是权限问题。所以我将以下内容添加到 AndroidManifest.xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
但我仍然得到例外。
如何使用 java.util.prefs.Preferences 类在 Android 中保存用户首选项?
解决方案
推荐阅读
- apache-spark - StreamingQuery.awaitTermination 的目的是什么?
- firebase - 将 REST API 用于 id 令牌时对 Firebase 存储进行身份验证
- java - 在 Java 的终端中显示西装符号
- php - 如何在 SQL 中查询离点最近的坐标?
- java - java.lang.ClassCastException:com.jcraft.jsch.ChannelSftp$2 无法转换为 java.io.FileInputStream
- c - 双缓冲和 printf
- oracle - 从今天的点和明天的未来点提取数据的 Oracle SQL 查询
- c++ - SDL_image 无法使用 IMG_LoadTexture() 加载 .png 文件
- ssl - 本地主机和主机上的 cookie
- sql - 内联三表好像不对