【问题标题】:ionic ios build give error whe work on iosionic ios build在ios上工作时出错
【发布时间】:2020-12-30 02:36:01
【问题描述】:

我在 ionic 版本 3 应用程序上工作我想将它发布到苹果商店我成功构建它但是何时提交它以审查应用程序被拒绝,因为

在 iPad 上审核时,我们在您的应用中发现了一个或多个错误 在 Wi-Fi 上运行 iOS 13.7。您的应用启动并显示无响应 白屏,没有其他内容。

然后我开始了一个新的 ionic 3 项目,我遇到了同样的问题。 我尝试使用 Cordova ios v6 和 v5 构建,但我遇到了同样的问题。 我使用这些命令构建它

ionic cordova platform add ios
ionic cordova run ios --prod -l --external --emulator --consolelogs --target="C62C1D15-1BDF-433C-BD72-2D9957C5F0F7"

当我在 iPhone 模拟器上运行它时,它运行良好,但在 iPad 上给我这些问题

[app-scripts] [00:02:36]  console.warn: Ionic Native: tried calling StatusBar.styleDefault, but Cordova is not available. Make sure to 
[app-scripts]             a) run in a real device or simulator and b) include cordova.js in your index.html 
[app-scripts] [00:02:36]  console.warn: Ionic Native: tried calling SplashScreen.hide, but Cordova is not available. Make sure to a) 
[app-scripts]             run in a real device or simulator and b) include cordova.js in your index.html

使用

cordova v10.0.0

ionic cli v6.11.0

【问题讨论】:

  • 你能分享一下你正在做状态栏样式和SplashScreen隐藏的sn-p

标签: ios cordova ionic-framework ionic3


【解决方案1】:

插件使用平台的本机代码。为了执行该代码,他们依赖于 Cordova。在加载cordova之前执行插件代码时,会抛出错误消息“Cordova不可用”。

您应该确保所有与插件相关的代码仅在加载后才执行。您可以通过订阅平台就绪事件并仅在触发后执行插件代码来做到这一点。一个例子是 import { Platform } from 'ionic-angular';

@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
    });
  }
}

【讨论】:

    猜你喜欢
    • 2021-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多