*

【android】webviewでアプリ内にwebページを読み込む

公開日: : 最終更新日:2013/01/08 android

webviewを使ってandroidアプリ内にwebページを読み込む定型文です。

	//viewを取得
	WebView webView = (WebView)findViewById(R.id.web_ads);
	//javascriptを有効化
	webView.getSettings().setJavaScriptEnabled(true);
	//プラグインを有効化
	webView.getSettings().setPluginsEnabled(true);
	//ピンチイン・アウトによる拡大縮小を有効化
        webView.getSettings().setBuiltInZoomControls(true);
	//スクロールバーをページ内にオーバーレイ表示する
	webView.setScrollBarStyle(WebView.SCROLLBARS_INSIDE_OVERLAY);

	//ページをロード
	webView.loadUrl("http://www.example.com/");
	//assetの場合
	webView.loadUrl("file:///android_asset/index.html");
	
	//イベントの処理。これがないとリンクを開いたときにブラウザを起動する。
	webView.setWebViewClient(new WebViewClient(){
		@Override
		public void onPageStarted(WebView view, String url, Bitmap favicon) {
			Log.v(TAG, "onPageStarted");
		}
		//ページ読み込み終了時の動作
		@Override
		public void onPageFinished(WebView view, String url) {
		}
	});
	
	
	//ページ内のログをlogcatに表示する
	webView.setWebChromeClient(new WebChromeClient(){
		@Override
		public boolean onConsoleMessage(ConsoleMessage cm){
			super.onConsoleMessage(cm);
			Log.d(TAG, cm.message() + "--from line " + cm.lineNumber());
			return true;
		}
	});
	
	//javascriptからjavaクラスのメソッドを実行する
	class JavascriptAdapter{
		private Context CON;
		public JavascriptAdapter(Context con){
		}
		public void myMethod(){
		}
	}
	JavascriptAdapter jsAdapter = new JavascriptAdapter(this);
	webView.addJavascriptInterface(jsAdapter, "myJavaClass");
	
	//javaからjavascriptの関数を実行する
	String script = "javascript:myFunction()";
	webView.loadUrl(script);

関連記事

no image

【android】 webviewでassetsのリソースを使用する

webviewでassets内のリソースにアクセスするには file:///android_a

記事を読む

no image

【android】非同期処理

Androidで非同期処理、マルチスレッドを処理するスニペット。 AndroidのスレッドはUIス

記事を読む

no image

【android】 adbコマンド集

●adbサービス起動 adb start-server ●adbサービス終了 adb

記事を読む

no image

[android] JSONのパースにかかる時間

リストデータなんかを保存したいというのはよくある要件だと思います。 DBは面倒だしカラム毎に集計す

記事を読む

no image

【android】バイブレーションを使う

必要なファイル MyApp.manifest MyApp.java MyApp.m

記事を読む

no image

【android】処理時間を計測する

パフォーマンスのリファクタリングを行うには処理時間の計測がかかせません。 SDK標準のクラスを使っ

記事を読む

no image

【android】アニメーション

Viewにアニメーションを付加する方法です。 目次 アニメーションの実行 de

記事を読む

no image

アプリ間連携 Intentfiler

ブラウザの共有からURLを受け取る。 Manifest.xmlのURL受け取り先のactivity

記事を読む

no image

【android】 APIバージョンによる動作の違い

「最近使用したアプリケーション」からの起動 2.x系 -> onNewIntentが呼ばれる 4

記事を読む

no image

インテント

基本 //任意のアクティビティの起動 Intent intent = new

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

no image
知らないと損をする6つのライセンスまとめ

オープンソースやフリーウェア、フリー素材などが巷に溢れ、それらを利用す

no image
ガリレオ:ニュースブラウザをリリースしました。

概要 ガリレオはニュースを読んだり、検索する機能に特化したブラウザア

no image
【android】Activityとプロセスのライフサイクル

またもやライフサイクル周りでハマったのですが、Androidのライフサ

→もっと見る

PAGE TOP ↑