2014年8月6日水曜日

PhoneGap で外部サイトが開けない場合

対象バージョンは PhoneGap 3.5 です。

例えば <a> 要素で外部サイトへのリンクを設定したが動かない場合などは、
アクセス可能なサイトを予めホワイトリストとして登録必要があります。
config.xml を開いて
<access origin="*" />

を追加とすると全てのサイトにアクセス可能になります。
特定のサイトをアクセス可能にする場合は URL を入れればOKです。

White List Guid | Phone Gap API Documentation
http://docs.phonegap.com/en/3.5.0/guide_appdev_whitelist_index.md.html#Whitelist%20Guide

2 件のコメント:

  1. eclipse4.2
    phonegap2.9.0
    jquery-1.11.1.min.js
    jquery.mobile-1.4.5.min.js
    cordova-2.9.0.jar
    cordova.js(バージョンがわからないので他サイトを参考にして1.5.0.jsにしてます。)

    phonegap-2.9.0/lib/android/xmlのxmlフォルダーをeclipse側のresフォルダーにコピーし、
    xmlフォルダーのconfig.xml内にあるaccess origin="*"/をaccess origin=".*"/に変更したのですが、外部htmlで作った文字が表示されず、「alert」問題がありました。と自作したエラー文が表示され通信が出来てないもようなのですが、、、
    設定ミスや見直した方がよい箇所などありますでしょうか?
    ご教示いただけたら幸いです。
    宜しくお願いします。

    返信削除
  2. PhoneGap は 3.5 しか触っていないのでちょっとわからないですが、
    2.9 の場合は以下のドキュメントに従えば大丈夫なはずです。
    http://docs.phonegap.com/en/2.9.0/guide_whitelist_index.md.html#Domain%20Whitelist%20Guide

    cordova.js ですが PhoneGap 3.5 の場合はデフォルトで設置されていたので、自分で拾ってきて置いたりはしていないので、そのへんも気になりますね。

    返信削除