flutter - Flutter 的 OnSharedPreferenceChangeListener

标签 flutter

在 Android 中,您可以执行以下操作来监听共享偏好的变化

SharedPreferences.OnSharedPreferenceChangeListener spChanged = new
                           SharedPreferences.OnSharedPreferenceChangeListener() {
            @Override
    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
            String key) {
        // your stuff here
    }
};

是否可以使用 flutter 来做到这一点? flutter官方的我看过了shared_preference而且这个功能似乎还没有实现。

是否有任何其他库或方法可以在不深入研究 native 代码的情况下实现上述目标。谢谢。

最佳答案

作为解决方法,将以下代码添加到您的 main() 中:

void funTimerMain() async  {
  // here check any changes to SharedPreferences, sqflite, Global Variables  etc...
  if (bolAnythingChanged) {
    // do something

    // 'refresh' any page you want (below line using Redux as example)
    GlobalVariables.storeHome.dispatch(Actions.Increment);
  }

 // recall this timer every x milliseconds
 new Future.delayed(new Duration(milliseconds: 1000), () async { 
  funTimerMain(); 
  }); 

}

// call the timer for the first time
funTimerMain();

关于flutter - Flutter 的 OnSharedPreferenceChangeListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55993021/

相关文章:

flutter - Flutter 中的对齐属性容器

android - 如何让 Flutter 模块在原生 Android Activity 启动二级路由后返回原生 Android Activity?

android - 当我运行 flutter 命令时找不到 PowerShell 可执行文件

flutter - 为什么直接在Column中使用ListView会导致呈现错误?

firebase - getter 'image' 在 null 上被调用

asynchronous - Dart 中的 Stream 和 Future

android - 找不到参数的方法 implementation() [com.google.android.material :material:1. 1.0]

flutter - 是否可以在一个小部件中两次使用SharedPreferences?

android - Facebook 登录,哈希键问题 - Flutter,如何在 flutter 中生成 Facebook Hashkey?

android - Flutter:getApplicationDocumentsDirectory() 返回 null