0

PhoneGap Build バージョン 2.9.0 と、公式の PG プラグイン ChildBrowser (v4.2.1) を使用しています。

背景: OAuth の目的で ChildBrowser を使用しています - サードパーティ アプリケーションへの認証。基本的に、ユーザーが認証されると、特定の URL を検出し、ChildBrowser を閉じて次に進みます。

ただし、これは iPad でのみ発生します (iPhone と Android は正常に動作します): - ChildBrowser がサード パーティ製アプリの認証画面で起動する - ユーザーがアプリを承認し、私の Web サイトのプレースホルダー ページにリダイレクトされる - ChildBrowser は (予想どおり) 閉じますが、 [プレースホルダー ページ].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");

私が信じていたのは、ブラウザーが意図したとおりに閉じていたのに、window.location を index.html に戻した行に到達したため、PhoneGap または iPad が誤った index.html ページを起動したということでした。ただし、ウィンドウの場所を変更する行を削除しようとしましたが、問題は引き続き発生します。考え?

4

1 に答える 1