I am trying to use shared prefs to store App Data and User Data differently, like this :
{
"APP_DATA": {
"banners": "{\"success\":true,\"data\":{}}",
"gameList": "{\"success\":true,\"data\":{}}"
},
"USER_DATA":
{
"emailVerified": "N",
"userName": "97144554455",
"playerToken": "W_8zUx3UCmFPeECjhhjhHhnnsajknHxAM0",
"idVerified": "UPLOADED",
"playerId": "412904",
"bankList": "{\"84\":\"African Bank\",\"5\":\"FNB : First National Bank\"}",
"unreadMsgCount": "0"
}
}
But whenever I update any value in "APP_DATA" or "USER_DATA", it deletes the previous value and updates new value. Example : After adding "banners" and "gamesList" to my APP_DATA, I only see "gamesList" because it is overriding the "banners" value.
MySharedPreferences.instance.setAppStringValue(
"banners", jsonEncode(bannersModel),
);
MySharedPreferences.instance.setAppStringValue(
"gamesList", jsonEncode(gamesListModel),
);
This is the function I'm using
setAppStringValue(String key, String value) async {
SharedPreferences myPrefs = await SharedPreferences.getInstance();
myPrefs.setString("APP_DATA", jsonEncode({key: value}));
}
How to solve this issue?