有没有办法将数据从核心异步存储迁移到社区版本?

问题描述

在我发布的版本中,我使用了核心 react-native async-storage,并在我的开发版本中更改为社区版本。问题是当我测试从旧版本升级到新版本时,异步存储中保存的所有数据都消失了。我知道它被删除的原因是,我将我的用户数据存储在 async-storage 中,并且在安装新更新时它们都消失了。当我尝试手动迁移数据时,核心异步存储中不再有数据。它只发生在 sqlite android,ios 工作正常。这是我用来手动迁移数据的代码

async _migrateDatabaseForAndroid() {
    console.warn("Migrate Database has been runned");

    if (Platform.OS == "android") {
      const keys = await OldAsyncStorage.getAllKeys();

      if (keys) {
        console.warn("Migrate Started");

        OldAsyncStorage.multiGet(keys)
          .then((result) => {
            console.warn("Migrate got values" + result);

            if (result && result.length > 0) {
              console.warn("Transferring" + result);

              AsyncStorage.multiSet(result)
                .then(() => {
                  console.warn("Data Migration Success");

                  this._decideFirstScreen();
                })
                .catch((err) => {
                  console.warn("Error Uploaded");
                  this._decideFirstScreen();
                });
            } else {
              this._decideFirstScreen();
            }
          })
          .catch((err) => {
            console.warn("Error Uploaded");
            this._decideFirstScreen();
          });
      } else {
        console.warn("No Need to Migrate");

        this._decideFirstScreen();
      }
    } else {
      this._decideFirstScreen();
    }
  }   

详情: @react-native-async-storage/async-storage: "^1.13.2",反应原生:“0.62.2”, 旧项目反应原生:“0.59.10”

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)