簡易ブラウザの作成(その1)

2010年5月20日(木)
谷口 岳

WebViewにURLをロードさせる

アプリケーションがWebViewを使用するように変更したので、次はWebViewに表示するURLを設定してみましょう。

WebViewにURLを表示するには、WebViewが持っているメソッド「loadUrl」を使用します。

アクティビティの処理を変更し、loadURLを呼び出すように処理を追加してみましょう。

  1. MyWebView/src/com.example.mywebview/MyWebView.javaを開きます。
  2. 赤文字部分の処理を追加します。
	<code>
public class MyWebView extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        <i><font color="red">WebView  webView = (WebView)findViewById(R.id.main_webview);
        webView.setWebViewClient(new WebViewClient());
        webView.loadUrl("http://google.co.jp");</font></i>
    }
}
</code>









WebViewのメソッドを呼び出すために、findViewById()を使用して、実行時に生成されるViewの情報を取得しています。この時、 Viewを指定するキーになる情報が、前章でxmlに記述したidになります。xmlに記述したidは、実行ファイル作成時に「R」というクラスのメンバとして生成され、アプリケーション・プログラムから参照可能になるという仕組みです。

後は、WebViewをhttpクライアントとして、loadURLを呼び出せば良いということになります。今回は、GoogleのURLを指定しています。

プログラムとしてはこれでOKですが、このままではうまく動作しません。

Androidでは、あらかじめプログラムが必要とする権限を、マニフェスト・ファイルに記述しておく必要があります。

現在は、マニフェストには何も記述されていないので、通信を行うことができません。

以下のようにマニフェストに追記し、通信を行う権限を追加します。

	<code>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.example.mywebview"
      android:versionCode="1"
      android:versionName="1.0">

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".MyWebView"
                  android:label="@string/app_name">

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

        </activity>

    </application>

    <i><font color="red"><uses-permission android:name="android.permission.INTERNET"></uses-permission></font></i>

</manifest>
</code>









この段階で、プログラムを実行してみましょう。

起動するだけで、図3のような画面が出るはずです。

この画面は通常のブラウザと同じ機能を持っていますので、Google検索を行うことも可能です。

まとめ

思ったよりも簡単にWebブラウザが作成できることを理解していただけたのではないかと思います。

次回は、About画面を追加する作業を通して、メニュー操作と画面の追加方法を説明します。

それでは次回をお楽しみに。

タオソフトウェア株式会社 代表取締役

Android OS発表直後からAndroid開発を開始 Android Market上に多数のアプリを公開、また多くの受託案件、コンサルタント等を行い、Androidに特化した企業に転換を図る URL http://www.taosoftware.co.jp/ Twitter tao_gaku

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています