Ionic Codepush Cordova 同步后不可用

Ionic Codepush Cordova not available after sync

我正在尝试将代码推送从 AppCenter 实施到我的 Ionic v4 应用程序中。 (ref)

我遇到了以下问题:我可以更新应用程序,但是当我关闭应用程序并再次打开时,它又是旧版本,并显示:

Updade ignored, because it was rollbacked

所以在我关闭应用程序后更新以某种方式回滚。在搜索这个问题后,我发现我必须 运行

this.codePush.notifyApplicationReady()

在应用程序启动时。我将其添加到我的代码中,但它也不起作用。如果我在 Android 模拟器上 运行 应用程序并打开日志,更新后它会显示:

cordova_not_available

所以 notifyApplicationReady 不起作用是有道理的,但为什么 cordova 不可用?

initializeApp() {
    this.platform.ready().then(() => {
        this.statusBar.styleDefault();

        this.codePush.notifyApplicationReady().then(value => {
            console.log(value);
        });

        this.codePush.sync({
            deploymentKey: 'MY_KEY',
            installMode: InstallMode.IMMEDIATE
        }).subscribe(status => {
            console.log(status);
        });
        this.splashScreen.hide();
    });
}

你使用命令 ionic build --prod 吗?此命令将不包含 cordova.js,因此如果应用程序安装了此软件包,则 cordova 将不可用,在 ionic4 中,我使用 ionic cordova build android --prod 来包含 cordova.js,然后释放www 文件到代码推送 serve.it wokrs!