peketaminの日記

その辺のプログラマーのチラ裏です。

AndroidのWebViewでHTML5 video mp4 再生は無理っぽい。 ドキュメントに従ったりstackoverflowに書かれているヒントをやってみたけど…。うう。

追記: どうやらm3u8 streamなど、ストリームmime/tyepにもよるようだ。。。。

AndroidManifest.xml

<application
    android:hardwareAccelerated="true">
    ....
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
package com.example.yukiyokoyama.webviewtest

import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.webkit.CookieManager
import android.webkit.WebChromeClient
import android.webkit.WebView


class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val myWebView = findViewById(R.id.webview) as WebView
        CookieManager.getInstance().setAcceptCookie(true);
        CookieManager.getInstance().setAcceptThirdPartyCookies(myWebView, true);
        val webSettings = myWebView.settings
        webSettings.javaScriptEnabled = true
        webSettings.domStorageEnabled = true
        webSettings.allowFileAccess = true
        webSettings.mediaPlaybackRequiresUserGesture = false
        webSettings.loadWithOverviewMode = true
        webSettings.useWideViewPort = true
        webSettings.builtInZoomControls = true

        myWebView.webChromeClient = WebChromeClient()
        myWebView.loadUrl("https://www.quirksmode.org/html5/tests/video.html")
        WebView.setWebContentsDebuggingEnabled(true);
    }
}

ツライ人を相手にする場合、その人が神か仏の化身で自分を試そうとしてると思え、という発想に感心した。まあ、その、最終的に神が汝を救済するかどうかは知る由もないものの。とても才能のある人でも夭折したりする。