facebook twitter hatena line email

「Android/webview/ローカル表示」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(webviewでローカルのassets内のhtmlを表示)
(htmlをそのまま入れる場合)
行36: 行36:
 
  String summary = "<html><body>You scored <b>192</b> points.</body></html>";
 
  String summary = "<html><body>You scored <b>192</b> points.</body></html>";
 
  webview.loadData(summary, "text/html", null);
 
  webview.loadData(summary, "text/html", null);
 +
 +
==ウェブページへのアクセス不可 net::err_file_not_foundと出る場合==
 +
appの下にassetsなどをおいてないか。main/src/assetsへ置いてるか確認。

2020年8月13日 (木) 15:12時点における版

webviewでローカルのassets内のhtmlを表示

  • app/src/MainActivity.java
public class MainActivity extends AppCompatActivity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       WebView webview = new WebView(this);
       webview = (WebView)activity.findViewById(R.id.webview);
       webview.setWebViewClient(new WebViewClient());
       webview.loadUrl("file:///android_asset/index.html");
   }
}
  • app/src/main/assets/index.html
<html><head><meta http-equiv='content-type' content='text/html;charset=UTF-8'>
<title>test</title></head><body>
helloworld<img src='ic_launcher.png'>です。
<a href='link.html'>リンク</a>のテスト
</body></html>
  • app/assets/ic_launcher.png
  • build.gradle
sourceSets{
  main{
    assets.srcDirs = ['assets']
  }
}

参考: http://growsic.com/blog/androidlocalhtml/

htmlをそのまま入れる場合

String summary = "<html><body>You scored 192 points.</body></html>";
webview.loadData(summary, "text/html", null);

ウェブページへのアクセス不可 net::err_file_not_foundと出る場合

appの下にassetsなどをおいてないか。main/src/assetsへ置いてるか確認。