前提
flutterでアンドロイドアプリを作成しています。
アプリが画面から外しても常駐で動くように
flutter_background_serviceを使って
定期的処理を行っています。
そのパラメータ(開始終了フラグ、設定値(閾値など)
を画面から設定しているのですが、
バックグラウンド処理側で値が初期値のまま変わらなくて
困っています。
メモリ空間が違うのはわかっているので、
普通の受け渡しではできないのはわかっていますが、
それを超えてする方法を教えてもらえませんか
実現したいこと
画面で開始ボタンON(bool型がtrueに)なると
バックグラウンド側もそれがわかること
他int型・string型のパラメータもいくつかある
発生している問題・エラーメッセージ
設定を画面から設定しているのですが、
バックグラウンド処理側で値が初期値のまま変わらなくて
SharedPreferencesを使って
画面側でSharedPreferences
試したこと
該当のソースコード
画面側
dart
1 2 bool flg = await globals.Strage.Set(globals.Key_Shopid, config["shopid"]); 3 await globals.Strage.Set(globals.Key_IsActive, false.toString()); 4
バックグラウンド側
dart
1 2 final SharedPreferences prefs = await SharedPreferences.getInstance(); 3 4 String shopid = await prefs.getString(globals.Key_Shopid) ?? ""; 5 6 String str = await prefs.getString(Key_IsActive) ?? ""; 7 if (str == "true") { 8 IsActive = true; 9 } else { 10 IsActive = false; 11 } 12 13
というようなことで共有できないかやってみたが
うまくなかった

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/01/16 00:58