cordova IONIC 5 -未安装InAppBrowser或您正在浏览器上运行-XCODE 13

vjhs03f7  于 2022-11-15  发布在  Ionic
关注(0)|答案(1)|浏览(261)

我有一个IONIC 5 / cordova项目,我使用InAppBrowser打开一个链接。
在下一个代码中:

const browser = this.iab.create(url);

我收到错误消息“WARN:未安装InAppBrowser或您正在浏览器上运行。正在返回window.open“。
我已经尝试了各种各样的东西,我已经在互联网上找到:
首先,我已经做了许多测试与@ionic-native/in-app-browser插件,但我总是得到相同的结果:

  • 删除节点模块、www、平台/ios(_M)
  • 重新安装(删除和安装)应用浏览器内库
  • 在开发和生产模式下重新编译。
  • 同样的错误..

我已经尝试了一次与新的插件:

$ ionic cordova plugin add cordova-plugin-inappbrowser 
$ npm install @awesome-cordova-plugins/in-app-browser
  • 我更改代码以获得新的本地插件

$离子 cordova 平台添加ios

  • 构建开发和生产

$离子 cordova 构建ios $离子 cordova 构建ios --产品

  • 同样的结果。

我已经验证了cordova插件安装在XCode项目的/Plugins文件夹中。
我有几件事要评论:
现在我使用XCode 13,但在XCode 12中工作正常。为了升级XCode,我已经将MacOS从 Catalina 升级到Monterey。
这两个项目之间的唯一区别是,在XCode 13中,“Legacy build system”被禁用,因为它已被“弃用”。
我不知道XCode是否不导入库,我不知道“Legacy Build System”是否有必要。我什么都不知道...:-(
有人能帮我吗?

  • 谢谢-谢谢
nkoocmlb

nkoocmlb1#

我发现问题了。
在我的项目中,我有一个“Object.prototype”函数,它产生了一个大问题,循环对象。
引用InAppBrowser插件,在文件inappbrowser.js中:

callbacks = callbacks || {};
for (var callbackName in callbacks) {
    iab.addEventListener(callbackName, callbacks[callbackName]);
}

也许它可以用Object.keys(回调)来改进,但我认为这是我的问题。

  • 谢谢-谢谢

相关问题