はい、それは別ですが、何らかの変数を In App Browser に渡す必要がある場合があります。iOS のように、現在の Web ビューから別の Web ビューに ls アイテムを渡すと、コーディングがはるかに簡単になります。
これが私がPhoneGapでやったことです
InAppBrowser executeScript() を使用して、現在の webviews localStorage のコピーを別の Web ビューに渡します。
//add the listener to detect when the page loads after inappbrowser is called into view
ref.addEventListener('loadstop', function(){
ref.executeScript({code: 'SetInAppBrowserLocalStorage(\''+localStorage+'\');'});
});
//In your inAppBrowser page you create a function that will get called on loadStop
//This will pass "all" the contents of the main webviws localStorage to the webview
//created by InAppBrowser
function SetInAppBrowserLocalStorage(localStorageThatWasPassed){
localStorage = localStorageThatWasPassed;
};
使用がそのビューを離れる前に、 SetInAppBrowserLocalStorage() によって作成された localStorage をクリアすることもできます。
テスト済みで 100% 動作しています :)...さらにサポートが必要な場合はお知らせください
***アップデート*****
これはまだ機能します...しかし、一貫性がなくなりました。多くのテストの後、これは単に進むべき道ではないことに気付きました。inappbrowser インスタンスの作成時に、データが十分に速く渡されないことがあります。問題トラッカーを介してコルドバの人たちと話をしたところ、安全な方法ではないと言われました...わかりました...しかし、ページ間で ls 変数を渡したいだけの場合はどうなるでしょうか。私のアプリでは..それらはインターネットからもアクセスできません... iOSやその他のWebのように、アプリでlsアイテムにグローバルにアクセスできない理由が正直にわかりません。誰かがより良い解決策を持っているなら、私はそれについて聞きたいです.