android java 分享功能,如何在Android端访问Flutter共享首选项(使用Java)

在Dart应用中,开发者遇到一个关于共享偏好设置的问题。他们试图通过`_switchPersistentNotifications`函数切换并存储`isPersistentNotificationEnabled`的布尔值,但当尝试在Android本地读取这个值时,条件检查从未返回true。已经尝试打印所有共享偏好值,但只显示了Android自动生成的值。寻求解决方案以正确地读取和使用共享的偏好设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我在dart中具有以下功能来设置特定的布尔首选项值。

_switchPersistentNotifications() {

setState(() {

isPersistentNotificationEnabled = !isPersistentNotificationEnabled;

});

widget.preferences.setBool(

"isPersistentNotificationEnabled", isPersistentNotificationEnabled);

}

此功能设置isPersistentNotificationEnabled首选项的值。

现在在本机android端,我应该使用此共享的首选项值。到目前为止,这是我所做的。

SharedPreferences preferences =

PreferenceManager.getDefaultSharedPreferences(getApplicationContext());

// check if the state change notification is to be shown

if (preferences.getBoolean("flutter.isStateChangeNotificationEnabled", false)) {

showConnectionStateChangeNotification();

}

而且if条件永远不会被评估为真。我还尝试使用下面的代码打印所有现有的首选项值。

Map allEntries = preferences.getAll();

for (Map.Entry entry : allEntries.entrySet()) {

Log.d("map values", entry.getKey() + ": " + entry.getValue().toString());

}

并且仅显示Android创建的值(使用java)。

非常感谢您对使用偏好值的任何帮助。谢谢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值