HTML ドキュメントのオフライン化

HTML ドキュメントをアプリ内の asset(場所は app/src/main/assets/ )として APK に内包して WebView で表示するサンプル。画像や CSS、HTML 同士の相対リンクも機能する。バックキーでリンクを戻れるようにもしている。

MainActivity

import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends Activity {
    WebView webView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        webView = findViewById(R.id.webView);
        webView.setWebViewClient(new WebViewClient());
        webView.loadUrl("file:///android_asset/index.html");
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK && webView.canGoBack()) {
            webView.goBack();
            return true;
        }

        return super.onKeyDown(keyCode, event);
    }
}
layout/activity_main.xml
AndroidManifest.xml

コメント

このブログの人気の投稿

EP-805A 廃インク吸収パッド交換

WZR-HP-AG300H with OpenWrt

この Apple ID は、App Store で使用されたことがありません