cordova Ionic V6 -应用程序中的浏览器无法打开,也未显示错误

du7egjpx  于 2022-11-15  发布在  Ionic
关注(0)|答案(2)|浏览(121)

我正在开发一个应用程序使用离子V6与Angular 和 cordova ,但我有一个问题,使用在应用程序浏览器,当我在电脑上使用应用程序(离子服务)它的工作正常,但当我在手机上测试它(离子 cordova 运行Android)的按钮,应该打开网页不工作,有简单的应用程序中没有任何行动,也没有显示在控制台中的错误。
我遵循此文档:https://ionicframework.com/docs/native/in-app-browser
我已经在其他应用程序中使用了In App Browser,但使用的是旧版的ionic,并使用了以下文档:https://ionicframework.com/docs/v3/native/in-app-browser/(在我的应用程序中无法使用ionic v6)
运行ionic info命令,得到以下数据:

Ionic:

   Ionic CLI                     : 6.16.3 (C:\Users\Gabri\AppData\Roaming\nvm\v14.17.0\node_modules\@ionic\cli)
   Ionic Framework               : @ionic/angular 6.1.0
   @angular-devkit/build-angular : 13.2.6
   @angular-devkit/schematics    : 13.2.6
   @angular/cli                  : 13.2.6
   @ionic/angular-toolkit        : 6.1.0

Cordova:

   Cordova CLI       : 10.0.0
   Cordova Platforms : android 9.1.0
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 5.0.0, (and 4 other plugins)

Utility:

   cordova-res (update available: 0.15.4) : 0.15.3
   native-run (update available: 1.6.0)   : 1.4.0

System:

   Android SDK Tools : 26.1.1 (C:\Android\android-sdk)
   NodeJS            : v14.17.0 (C:\Program Files\nodejs\node.exe)
   npm               : 6.14.13
   OS                : Windows 10

在代码中,我使用了以下import:

import { InAppBrowser } from '@awesome-cordova-plugins/in-app-browser/ngx';

施工方:

constructor(private iab: InAppBrowser) {}

以及打开浏览器的函数:

abrirProvaOuGabarito(arquivo: string) {
  this.iab.create(this.servidorCaminhoBase + arquivo, '_system');
}

例如,生成的链接如下所示:https://plataforma.aerosafeead.com.br/Uploads/simulados/prova-1653513297.pdf
我也测试了谷歌链接,HTTP和HTTPS,我也尝试用_blank替换_system或什么都不留下,我也尝试用window.open()打开页面,并在HTML(< a href=""></a>)中放置一个简单的链接,我在两个不同的手机上测试,但结果总是一样的。
在我的package.json中,导入如下:

"@awesome-cordova-plugins/core": "^5.41.0",
"@awesome-cordova-plugins/in-app-browser": "^5.43.0",

InAppBrowser位于我的app.module.ts提供程序中
在我的config.xml中,我只是添加了与默认情况下不同的<allow-navigation href="*" />,我不知道它是否会干扰,但我使用它是因为我在我的应用程序中运行youtube视频。
我已经找了好几个地方,都没有解决的办法,我不知道还有什么可以改变的。
编辑:我创建了一个新的应用程序来测试,一个干净的应用程序,使用相同的环境,默认情况下它在主页上带有一个链接(空白应用程序),创建后,我用ionic serve运行应用程序,链接工作正常,但如果你用ionic cordova run android在手机上运行它,即使应用程序完全为空,错误也是一样的

yi0zb3m4

yi0zb3m41#

您需要调用show()方法来实际显示浏览器中的页面。

abrirProvaOuGabarito(arquivo: string) {
  const browser = this.iab.create(this.servidorCaminhoBase + arquivo, '_system');
  browser.show();
}
cgyqldqp

cgyqldqp2#

尝试
创建一个新的数据库,并将其添加到数据库中。

相关问题