2015年6月12日金曜日

外部サイトをブラウザで開く(Android)

Cordova5(Cordova Android4)からは外部サイトを他のブラウザ開くだけでもプラグインwhitelistが必要になりました。

手順


1 プラグインインストール
cordova plugin add cordova-plugin-whitelist

2 config.xmlに以下を追加
http://www.sample.comを許可する場合
<allow-intent href="http://www.sample.com" />

http,https全部許可する場合
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />

上記で動くようになりました。許可されていないリンクをクリックした場合は何もアクションは出されません。
これでリンク自体は開けるようになったのですがCSP(Content Security Policy)タグを追加していない場合は以下の警告がコンソールに出されました。
No Content-Security-Policy meta tag found. Please add one when using the cordova-plugin-whitelist plugin.

Cordova Android 3.7.2 -> 4.0.2 へのアップグレード

変更点

  • 「android.permission.ACCESS_WIFI_STATE」が追加された
    • どんな些細なものでもPermissionが追加されるのはとても困まります

2015年6月10日水曜日

ビルドエラー対応 q/q.js:126 throw e;

platforms/android/cordova/node_modules/q/q.js:126
                    throw e;

上記のビルドエラーが起きたらエラー全文読んでも何が悪いのか分からないので、
cordova platform rm android
cordova platform add android
で直りました。

エラーが起き始める条件として「build途中でbuildをキャンセル」した場合に起きました。



2015年6月4日木曜日

PCのChromeでCordovaアプリを分析

ChromeでURLに chrome://inspect とうつと、接続している端末のChrome及びWebViewアプリが分析できるようになる。

consoleに出力するには
console.log ではなく window.console.log からうつ必要がある