だから私はPhonegap 2.9.0のphonegapプロジェクトとPhonegapBuildでビルドしています。
アプリに外部リンクを取得しました。これをアプリ内で開くか、アプリの外部でデフォルトのデバイスブラウザーを使用します。どちらのソリューションでも大丈夫です。今日、私のアプリはリンクをアプリ内で開きますが、全画面表示になり、ズームできず、アプリに戻るためのボタンもありません...
私は何日間も解決策を見つけようとしています。ここで同じ種類の質問を調べていますが、何もうまくいきません。
誰かがこれについてのすべてを明確に説明できますか?それがまったく明確でない/簡単ではないと言えるので、さまざまな選択肢/パラメータは何ですか?
Q1:
私は尋ねることから始めます:config.xmlファイルで、stay-in-webview設定はphonegap 2.3.0で非推奨になりましたか?だからここで希望することは何もない?
Q2:私はwindow.openとターゲットシステム/空白/自己のプラグインInAppBrowserについてたくさん読んで試しましたが、違いはありません。私はInAppのままですが、ナビゲーションボタンがないので役に立ちません。
何か不足していますか?
plugin name="InAppBrowser" value="CDVInAppBrowser"
私は尋ねることから始めます:config.xmlファイルで、stay-in-webview設定はphonegap 2.3.0で非推奨になりましたね?だからここで希望することは何もない?
そのとおりです。 2.9を使用している場合は、この設定について心配する必要はありません。
私はwindow.openとターゲットシステム/空白/自己のプラグインInAppBrowserについてたくさん読んで試してみましたが、違いはありません。私はInAppのままですが、ナビゲーションボタンがないので役に立ちません。ここで何か不足していますか?
これを機能させるためにいくつかの問題がありました。彼らのドキュメントは少し散らばっていて、それをすべて読む必要があります。これが私がそれを機能させる方法です:
<script src="phonegap.js"></script>
_があることを確認してくださいアプリ内ブラウザでリンクを開くには、次のJavaScriptを使用します。
_function openURL(urlString){
myURL = encodeURI(urlString);
window.open(myURL, '_blank');
}
_
これにより、渡されたURLがinappbrowserで開きます。 window.open(myURL, '_blank');
をwindow.open(myURL, '_system');
に変更すると、渡されたURLがシステムブラウザで開かれます。
最後に、アイテムのクリックは次のようになります。
_<a href='#' onclick='openURL("http://www.urlyouwant")/>
_
または、オブジェクトにイベントリスナーを添付することもできますが、要点は理解できると思います。
さらに、InAppBrowserには多くのイベントリスナーをアタッチできます。これらに興味がある場合は、 documentation を参照してください。
重要!!!!ステップ1を忘れないでください!
お役に立てれば。
AndroidとiOSでURLを開く方法は2つあります。
FOR IOS次のコードを使用:window.open("http://google.com", '_system');
Androidの場合、次のコードを使用します:navigator.app.loadUrl("http://google.com", {openExternal : true});
Domの答えはPhoneGap 2.9.0を使用するために機能します
[〜#〜]ただし[〜#〜]、彼はそれが非常に重要であると言ったように手順1に従います。私は https://build.phonegap.com を使用してアプリケーションをコンパイルし、<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
これをステップ1の代わりに機能させるには
他のすべてが失敗する場合は、この例を試してください。それは電話ギャップの従業員の一人によって書かれました:
更新:2016-03-20 このトピックに関するチュートリアルを作成しました。
チュートリアル:ホワイトリストの例を使用したiframe内のPhonegap Build外部Webページ
これを読んでいると、この投稿がCordova/Phonegap/Phonegap Buildの2.9.0を参照していることに気付くでしょう。 2.xは正式に非推奨になり、サポートされなくなりました。
2.X を使用していて、アプリの開発を継続したい場合は、アップグレードしてください。
3.x、4.x、または5.x 以上でコンパイルしている場合は、読み進めてください。
外部リンクが開かないなどのグーグルの場合、ここにあなたが知っておくべきことがあります。 2015年9月と10月に、CordovaとPhonegapはいくつかの大きな変更を行いました。これらの変更は有効になりましたwhite-list
ing
White-list
ingは、使用する予定の外部リンクのホワイトリストをシステムに提供する必要があることを意味します。システム全体が混乱する可能性があります。私は現在ブログ投稿に取り組んでいますが、それまでは知っておくべきことです。
white-list
システムには3つの部分があります
config.xml
で提供されますconfig.xml
に追加するホワイトリストプラグインアプリケーションは簡単ではありません。バージョン3.xを使用している場合、これは必要ありません。 4.x以上を使用している場合は、これが当てはまります。 5.xを使用している場合は、さらに多くのルールが適用されます。私が言ったように、私はブログ投稿に取り組んでいますが、このホワイトリストのことはとても面倒なので、私は言葉を広める必要があります。
ここにあなたが始めるために必要なリンクがあります。
ここにさらに説明があります:
タイムアウトAJAX Cordova 5にリクエスト
さらに、Cordova/Phonegapの新しい開発者による のトップミスの#10を読むことができます
あなたが勇敢なら、あなたは私の * RAW * ノートを Cordova/Phonegap the white-list system で読むことができます
window.openは、コールバックメソッドからは動作しないようです。 (多分これはブラウザの制限でしょうか?)それはOPの問題ではないかもしれませんが、知識が誰かを助けることを望みます。