3

このような WebView の代わりにブラウザーでリンクを開く方法と、Phonegap の独自のドキュメントについて、いくつかの異なる議論を見てきました。index.htmlただし、これら 2 つのいずれかを機能させるのに問題があります。ローカルファイル以外の URL を読み込んでいるためではないかと考えています。これが私のセットアップです。

URL を読み込んでいますwww.example.comwww.non-example.comすべてのサブ URL を WebView にロードしたまま、ブラウザーで開くすべての URL が必要です。私は持っているように編集cordova.xmlしました

<access origin="http://www.example.com"/>

しかし、URLを入れると

<a href="http://www.non-example.com" target="_blank">Foo</a>

Android デバイスでクリックすると、ブラウザではなく WebView で開くだけです。これが関連しているかどうかはわかりませんが、このリリースで PhoneGap を 2.2 に更新config.xmlし、同じレベルでを追加しましたindex.html(ただし、Android プロジェクトを再作成していないため、使用されているかどうかはわかりません)。最初から)。だから私の質問はこれらに要約されます:

1) ローカルではない index.html を使用している場合、ブラウザで URL が開かれるようにするにはどうすればよいですか?

config.xml2) 自分のファイルが使用されているかどうかはどうすればわかりますか?

4

2 に答える 2

0

受け入れられた答えがここにあるようです。要点は、ナビゲーター オブジェクトを呼び出してリンクを開くように指示し、{external: true} のパラメーターを渡すことができるように見えます。私はそれをテストしていませんが、頑張ってください!

于 2013-02-28T23:39:06.580 に答える
0

あなたが説明したことを試してみたところ、Cordova 2.3 で問題なく動作しました。

広告 1)

他の競合するアクセス ルール、つまりデフォルト ルール (access origin=".*") を削除したことを確認しましたか? - 最も緩いルールが優先されます。

広告 2)

プロジェクトを再構築する前にクリーンアップして、更新された config.xml が確実に使用されるようにします。

正確な動作を強制したい場合は、常にプラグインとネイティブ コードを使用できますが、ブラウザを開くにはやり過ぎかもしれません。

于 2013-02-28T23:17:13.410 に答える