AndroidでWebViewを使う際に少し躓いたのでメモ。今のところWebViewを使ったアプリを作る予定は無いけれど…。

  • uses-permission の追加。

インターネットにアクセスするので、AndroidManifest.xmlに、 を追加しておく。

webViewInstance.getSettings().setJavaScriptEnabled(true); で許可しないとなんか見れないのがある。

  • WebViewClient を設定する。

webViewInstance.setWebViewClient で WebViewClientのinstanceを設定しないと、redirectでブラウザアプリが開いてしまう。

  • WebViewClient の派生Classで挙動をカスタマイズする。

shouldOverrideUrlLoading とかoverrideしとかないとリンク開いた時にブラウザが起動するんだとか。

あとAndroidでよく引っかかってしまうのが、新しいActivityを作ったらそれをAndroidManifest.xml に登録しないといけないところだろうか…。追加しないで起動すると例外が起きるんだけれど、内容がわかりにくい。ソースが表示されるようにしないと駄目なのかも。なんで最初から表示されるようにインストーラーが設定してくれないんだろう?、とか思ってしまうけれど、EclipseというIDEを使ってるのもあって楽に出来ないと気が済まなくなってるのかもしれない。(もしかしたら単に例外処理を追加して例外の内容を表示すれば原因がすぐ分かるのかも?)