微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ionic 3在iOS 12上首次启动失败,与plugin_not_installed

如何解决Ionic 3在iOS 12上首次启动失败,与plugin_not_installed

在iOS 12(至少在同时卡在12上的iPhone 5s和6)上安装后,我的应用首次出现白屏。如果我滑开该应用程序并再次打开它,它将正常运行。我检查了控制台日志,白屏似乎是plugin_not_installed错误

是否可以打开更多日志记录以找出哪个插件在第一次运行时无法加载?

还是我看错地方了?

解决方法

该应用程序仅在首次启动时失败,使我相信已安装了插件,但是在启动过程中,一些插件代码在初始化之前就已执行。

对于初学者来说,我将确保所有与插件相关的代码仅在加载后才执行。您可以通过订阅平台就绪事件并仅在触发后执行插件代码来执行此操作。一个例子是 从“ ionic-angular”导入{Platform};

@Component({...})
export MyApp {
  constructor(public plt: Platform) {
    this.plt.ready().then((readySource) => {
      console.log('Platform ready from',readySource);
      // Platform now ready,execute any required native code
    });
  }
}

此外,登录cordova代码可能对缩小问题范围没有太大帮助。由于您是在iOS上遇到此问题的,因此建议您检查Xcode中的日志,以帮助您调查此错误。

,

通过Safari通过查看JS控制台,我发现缺少哪个插件-这很明显是因为Safari突出显示警告消息的方式。 Ionic使用插件名称记录警告,例如:

Ionic Native:尝试访问SQLite插件,但未安装。

这也应该显示在Xcode的控制台中,但是我没有注意到此日志行-它发生在代码停止工作很长时间之前,但是您应该能够过滤掉该消息的一部分以找到它。

我通过从提供商的构造函数中查找试图使用此插件的代码并将其包装在“ platform.ready()”检查中来解决了这个问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。