ここのことはなかったことにするかもしれない

仕事がらみの記事を主として扱いますが、あくまで個人ブログです。2013年以前の記事は https://yellow-73.hatenablog.com/ にあります。

いろいろメモ

addJavascriptInterface()でWebView側から見えなくなったら、見せたいメソッドに @JavascriptInterface アノテーションをつける。

WebViewをchrome://inspectからデバッグしたい場合、次を入れておく。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
  WebView.setWebContentsDebuggingEnabled(true);
}

WebViewのリンクをクリックしたときに別アプリを立ち上げたい場合は次のようにする?deprecated対応も入れたけど、これでいいのか分からない。

webview.webViewClient = object: WebViewClient() {
  @TargetApi(Build.VERSION_CODES.LOLLIPOP)
    override fun shouldOverrideUrlLoading(
      view: WebView?,
      request: WebResourceRequest?
  ): Boolean {
  ...
  }
  override fun shouldOverrideUrlLoading(view: WebView?, url: String?): Boolean {
   ...
  }

}


位置情報取得許可はDalvik側で受けられます。

https://stackoverflow.com/questions/32659725/android-m-system-permission-vs-webview-location-permission/33549796

 webview.webChromeClient = object: WebChromeClient() {
  override fun onGeolocationPermissionsShowPrompt(
    origin: String?,
    callback: GeolocationPermissions.Callback
  ) {
  ...
  }

}


http通信を可能にするには Manifestを編集。