2013-08-30 10 views
0

공식 PG 플러그인 ChildBrowser (v4.2.1)를 사용하여 PhoneGap Build 버전 2.9.0을 사용하고 있습니다.PhoneGap iPad에서 ChildBrowser 플러그인 문제 빌드 - 닫은 후에 다시 엽니 다.

배경 : OAuth 목적으로 ChildBrowser를 사용하고 있습니다. 타사 응용 프로그램 인증입니다. 기본적으로 사용자가 인증을 받으면 특정 URL을 감지하고 ChildBrowser를 닫은 다음 계속 이동합니다.

그러나 이것은 단지 (아이폰과 안드로이드가 잘 작동) 아이 패드에 발생하는 것입니다 : - 사용자가 내 응용 프로그램을 승인, 내 웹 사이트 페이지를 지정자로 리디렉션됩니다 - - ChildBrowser ChildBrowser는 제 3 자 응용 프로그램의 인증 화면 에 출시 (예상대로) 닫히고 [placeholder page] .com/index.html로 바로 다시 열립니다. - 전체 화면을 차지하므로 사용자는 계속할 수 없습니다.

여기 내 코드입니다 :

window.plugins.childBrowser.onLocationChange = function(location) { 
    if (location.indexOf('oauth_verifier') > -1) { 
    window.plugins.childBrowser.close(); 

    // code removed - retrieve and store oauth value from url (location variable) 
    // code removed - get access token via 3rd party API 

    navigator.notification.alert('Success!'); 

    // send user to Activity tab 
    window.location.href = "index.html#tabstrip-activity"; 
    } 
    } 
}; 

childBrowser.showWebPage("www.linkTo3rdPartySiteAuth.com"); 

나는 브라우저가 원하는대로 마감했지만, 그때는 내가 index.html을 맞댄에서는 window.location을 설정 라인에 도달이었다 일어나고 믿고 무엇을, PhoneGap 또는 iPad에서 잘못된 index.html 페이지가 시작됩니다. 그러나 창 위치를 변경하는 줄을 제거하려고했지만 여전히 문제가 발생합니다. 생각?

답변

0

문제를 해결했습니다 : 창 위치를 설정 한 선이 문제인 것처럼 보입니다. PhoneGap Build가 앱 제거를 시도한 마지막 때 앱을 올바르게 업데이트하지 않았다고 생각합니다. 이후의 테스트는 성공적이었습니다. 나는 왜 이것이 여기에서 발생하는지, 그리고 같은 행동을하는 다른 위치가 아닌지에 관해서는 다소 혼란스러워합니다. 가장 좋은 추측은 그것이 onLocationChange 메소드 내에 있기 때문이라고 생각합니다.