在inAppBrowser里面的cordova android inAppBrowser

时间:2015-06-24 09:15:14

标签: cordova inappbrowser

我使用

在我的cordova应用中打开网页
cordova.InAppBrowser.open('...', '_self','location=no,hidden=yes');

是否可以使用InAppBrowser _blank打开此页面上的链接?

现在我有一个错误

InAppBrowser does not support Cordova API calls

由于

2 个答案:

答案 0 :(得分:1)

好的,默认情况下InAppBrowser插件安装在Cordova应用程序中,因此无需添加任何显式插件..

使用此代码打开

 <input type="submit" value="submit" src="img/btn.png" onclick="window.open('https://yourexample.com','_blank','location=no','closebuttoncaption=Return','EnableViewPortScale=no');"/>

更新:

onclick="window.open('https://example.com','_blank','location=yes','closebuttoncaption=Return','EnableViewPortScale=no');"/>
  • _self:如果URL在白名单中,则在Cordova WebView中打开,否则在InAppBrowser中打开。
  • _blank:在InAppBrowser中打开。
  • _system:在系统的网络浏览器中打开。

InAppBrowser的选项。可选,默认为:location = yes。 (字符串)

选项字符串不得包含任何空格,并且每个要素的名称/值对必须用逗号分隔。功能名称不区分大小写。所有平台都支持以下值:

  • location:设置为yes或no以打开或关闭InAppBrowser的位置栏。 仅适用于Android:

  • hidden:设置为yes以创建浏览器并加载页面,但不显示它。加载完成后,loadstop事件将触发。省略或设置为no(默认值)以使浏览器打开并正常加载。

  • clearcache:设置为yes以在打开新窗口之前清除浏览器的Cookie缓存
  • clearsessioncache:设置为yes以在打开新窗口之前清除会话cookie缓存
  • zoom:设置为yes以显示Android浏览器的缩放控件,设置为no以隐藏它们。默认值为是。
  • hardwareback:设置为yes以使用硬件后退按钮向后导航InAppBrowser的历史记录。如果没有上一页,则InAppBrowser将关闭。默认值为yes,因此如果希望后退按钮只是关闭InAppBrowser,则必须将其设置为no。

有关https://github.com/apache/cordova-plugin-inappbrowser

的更多信息

答案 1 :(得分:0)

使用create()方法代替open()。我不知道您是否使用inAppBrowser插件。但是我已经完成了在我的应用程序中要做的事情。

通过运行以下命令首先安装inAppBrowser插件:

  

ionic cordova插件添加cordova-plugin-inappbrowser   npm install @ ionic-native / in-app-browser

,然后将inAppBrowser添加到 app.module.ts 文件的提供程序中,如下所示:

app.module.ts

import { InAppBrowser } from '@ionic-native/in-app-browser';
...
...

@NgModule({
  declarations: [
    MyApp
  ],
  imports: [
    BrowserModule,
    IonicModule.forRoot(MyApp),
    ...
    ...
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp
  ],
  providers: [
    StatusBar,
    SplashScreen,
    {provide: ErrorHandler, useClass: IonicErrorHandler},
    ...
    ...
    InAppBrowser,
    ...
    ...
  ]
})
export class AppModule {}

然后您可以在页面中使用inAppBrowser进行导入,因此请先将其导入:

import { InAppBrowser, InAppBrowserOptions } from '@ionic-native/in-app-browser';

然后将其注入构造函数:

constructor(public iab: InAppBrowser) {

}

现在,您必须使用create()方法在页面内打开网页:

let browser = this.iab.create("...url...", '_blank',{
    location:'yes'
});

还有许多其他选项,以及用于在浏览器中进行更多配置的

希望这会对您有所帮助。