2017-02-04 14 views
3

iphone 7 장치 또는 에뮬레이터에서 실행할 때 inappbrowser가 성공적으로 열리지 만 이벤트 리스너가 호출되지 않습니다. 아래 코드는 안드로이드에서 잘 작동합니다. 코드바 6.5.0에서 작업 중이며 inappbrowser 플러그인은 버전 1.6.1입니다. 현재 Mac OS X 10.12.2에서 작업 중입니다. 여기 Cordova InAppBrowser 이벤트 리스너가 iOS에서 작동하지 않습니다.

function redirect() { 
    if (isloggedin){ 
    navigator.notification.alert("You are already logged in"); 
    } else { 
    var url = "https://connect.stripe.com/oauth/authorize?response_type=code&client_id=CLIENT_ID&scope=read_write"; 
    var target = "_system"; 
    var options = "location=yes, hidden=no, clearcache=yes"; 
    browserRef.addEventListener('loadstart', function(event) { 
     if ((event.url).indexOf("https://example.com") !== -1) { 
     var redirectedURI = event.url; 
     registerUser(redirectedURI); 
     browserRef.close(); 
     } 
    }); 
    } 
} 

는 내 config.xml에 나는 더 많은 정보를 제공하기 위해보다 더 행복 오전 info about browserRef. 와 네비게이터 알림의 이미지입니다. 도움을 주시면 감사하겠습니다.

편집 : 리디렉션 기능이 끝날 때마다 browserRef.close()를 추가 할 때마다 xcode "IAB.close()가 호출되었지만 이미 닫혔습니다."라는 오류 메시지가 나타납니다. 나는 또한 어떤 성공없이 window.open() 시도했다.

편집 2 : 여러 가지 일을 시도 한 후이 나를 위해 일을 무엇 때문에 리디렉션 기능,

<a href="#" onClick="redirect();">Online Payments</a> 

답변

1

좋아이 버튼을 클릭 호출됩니다. 네 가지 가능한 모든 인앱 이벤트를 다른 대상에서 실행 해 보았습니다. 이 사건들이 다시 불 태울 유일한 대상은 "희미한"것이었다.

browserRef.addEventListener('loadstart', function(event) { navigator.notification.alert(event, event.url); }); 
browserRef.addEventListener('loadstop', function(event) { navigator.notification.alert(event); }); 
browserRef.addEventListener('loaderror', function(event) { navigator.notification.alert(event, event.code, event.message); }); 
browserRef.addEventListener('exit', function(event) { navigator.notification.alert("exit"); }); 

기타주의 할 점 : "loadstart"는 "_self"에서만 실행됩니다.

나는이 문제를 해결하기 위해 노력했지만, 왜 이런 일이 발생했는지에 대한 통찰력을 제공 할 수 있다면 내 코드/빌드에 대한 자세한 정보를 제공하게되어 기쁩니다.

+0

동일한 문제가있어이 주제에 대해 동일한 문제가 발견 되었습니까? – Orion390

+0

@ Orion390 아니요. 죄송합니다. 희망을 찾으십시오. – phil

+0

inAppBrowser를 사용하는 대신에 웹 사이트를 cordova 안에있는 iframe에 넣으십시오. 그런 식으로 모든 것이 웹 사이트를 보여 주면서 작동합니다. (하지만 X-Frame-Options처럼 웹 사이트), 누군가가 도움이되기를 바랍니다. – Orion390

관련 문제