在我通过Google Play商店发布更新后,我注意到所有用户都必须进行入职培训并再次登录。
由于我存储了用户在React-natives的AsyncStorage
中入职的事实,因此我认为原因是两次更新之间的状态不持久。
我使用的代码类似于:
try {
const value = await AsyncStorage.getItem(storageKey);
if (!value) {
await AsyncStorage.setItem(storageKey, 'pending');
}
} catch (err) {}
稍后,我将状态设置为“完成”。我使用aws-amplify进行身份验证,该身份也将登录用户存储到AsyncStroage中(afik)。此状态也会丢失。
在React-Native docs中,它说AsyncStorage是持久的。
我的问题是:如何获得跨平台更新之间的持久状态?
答案 0 :(得分:0)
我非常确定它不会在更新过程中持续存在,因为您正在下载并安装新的二进制文件。如果value
未定义,则可能必须调用API作为后备。