facebook twitter hatena line email

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

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(htmlをそのまま入れる場合)
(webviewでローカルのassets内のhtmlを表示)
行23: 行23:
 
*app/assets/ic_launcher.png
 
*app/assets/ic_launcher.png
  
*build.gradle
+
*app/build.gradle
  sourceSets{
+
  android {
   main{
+
   sourceSets{
     assets.srcDirs = ['assets']
+
     main{
 +
      assets.srcDirs = ['assets']
 +
    }
 
   }
 
   }
 
  }
 
  }

2020年8月26日 (水) 14:24時点における版

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
  • app/build.gradle
android {
  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へ置いてるか確認。