2017-09-19 3 views
0

Ionic Cordova 용 inAppBrowser 플러그인을 설치했습니다. (적어도 내가 올바르게 설치했다고 생각합니다. 여기의 지시 사항을 따르십시오 : https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-inappbrowser/#installation). Ionic Cordova inappbrowser가 iOS에서 작동하지 않음

내가 내 app.module.ts 파일에 inAppBrowser 수입 및 공급자 목록에 추가 :

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

providers: [ 
StatusBar, 
SplashScreen, 
InAppBrowser, 
{provide: ErrorHandler, useClass: IonicErrorHandler} 
] 

나는 또한이 같은 관련 페이지로 주입 :

export class AboutPage { 

options : InAppBrowserOptions = { 
    location : 'yes', 
    hidden : 'no', 
    clearcache : 'yes', 
    clearsessioncache : 'yes', 
    zoom : 'yes',//Android only 
    hardwareback : 'yes', 
    mediaPlaybackRequiresUserAction : 'no', 
    shouldPauseOnSuspend : 'no', //Android only 
    closebuttoncaption : 'Close', //iOS only 
    disallowoverscroll : 'no', //iOS only 
    toolbar : 'yes', //iOS only 
    enableViewportScale : 'no', //iOS only 
    allowInlineMediaPlayback : 'no',//iOS only 
    presentationstyle : 'pagesheet',//iOS only 
    fullscreen : 'yes',//Windows only 
}; 

    constructor(public navCtrl: NavController, public navParams: NavParams, private theInAppBrowser: InAppBrowser) { 
    } 

    public openWithSystemBrowser(url : string){ 
    let target = "_system"; 
    this.theInAppBrowser.create(url,target,this.options); 
} 
public openWithInAppBrowser(url : string){ 
    let target = "_blank"; 
    this.theInAppBrowser.create(url,target,this.options); 
} 
public openWithCordovaBrowser(url : string){ 
    let target = "_self"; 
    this.theInAppBrowser.create(url,target,this.options); 
} 

    ionViewDidLoad() { 
    console.log('ionViewDidLoad AboutPage'); 
    } 




} 

그런 다음 html 페이지에 버튼을 추가했습니다.

<button ion-button (click)="openWithSystemBrowser('https://www.preachingfriars.org')">Visit our site</button> 

Android에서 훌륭하게 작동하는 것으로 보이지만 iOS에는 별 도움이되지 않습니다. 버튼을 클릭하면 아무 일도 일어나지 않습니다. 나는 수 일간 포럼을 수색 해 왔지만 여전히 작동하도록 관리 할 수는 없습니다. 당신이 제공 할 수있는 도움을 주시면 감사하겠습니다!

감사합니다. 브렌트

답변

0

당신은 당신의 config.xml 파일

<allow-intent href="*" /> 
<feature name="InAppBrowser"> 
     <param name="android-package" value="org.apache.cordova.inappbrowser.InAppBrowser" /> 
</feature> 
+0

안녕하세요 - 허용 된 플러그인입니다. 화이트리스트가 설치되어 있고 "allow-intent"라인이 config.xml 파일에 있습니다. 아직도 작동하지 않습니다. – Brent

+0

아직 해결책을 찾지 못했습니다. 위의 제안은 효과가 없습니다. – Brent

0

작성 방법은 옵션 매개 변수로 문자열이 아닌 오브젝트를이 추가 시도 할 수 있습니다. 또한 show 메서드를 호출해야합니다.

const browser = this.iab.create(targetUrl, '_self', 'location=no'); 
browser.show(); 
+0

안녕하세요 크리스챤 - 내 무지를 용서해주십시오. 나는 여전히 이온 프로그래밍에 비교적 새로운 편이다. 미리 감사드립니다. – Brent

+0

코드 내부에 다음과 같이 변경해야합니다. this.theInAppBrowser.create (url, target, this.options) => this.theInAppBrowser.create (url, target, 'location = yes, hidden = no, clearcache = yes ................ '); – Christian

관련 문제