Friday, March 23, 2018

HTML5 video player

<!DOCTYPE html>
<html>
<body>

<button onclick="playVid()" type="button">Play</button>
<button onclick="pauseVid()" type="button">Pause</button>
<button onclick="seekVid()" type="button">Seek</button>
<button onclick="ccVid()" type="button">CC</button><br>
<video id="myVideo" width="600" height="400" autoplay="autoplay" controls='false'>
  <source src="./big.mp4" type="video/mp4">
  <track label="pt" kind="subtitles" srclang="pt" src="./small.vtt" default />
  Your browser does not support the video tag.
</video>
<script>

var vid = document.getElementById("myVideo");
var aaaa = 'showing';
function myFunction() {
    document.getElementById("myVideo").controls = true;
}

function playVid() {
    vid.play();
}

function pauseVid() {
    vid.pause();
}

function seekVid() {
    var cTime = vid.currentTime;
    vid.currentTime += 3;
}

function ccVid() {
   if (aaaa==='showing')
      aaaa = 'hidden';
   else
      aaaa = 'showing';
   for (var i = 0; i < vid.textTracks.length; i++)
      vid.textTracks[i].mode = aaaa;
}

</script>
</body>
</html>

Monday, March 12, 2018

Android之webview



1. webview的基本代码

https://developer.android.com/guide/webapps/webview.html

webview.xml:
<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webView1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
/>

MainActivity.java:
public class MainActivity extends Activity {
 
    private WebView webView;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.webview);
        webView = (WebView) findViewById(R.id.webView1);
        webView.setJavaScriptEnabled(true);
        webView.loadUrl("http://www.vtasters.com/unittest");
       //webView.loadUrl("file:///android_asset/abc.html");//in app/assets/abc.html

AndroidManifest.xml:
<manifest ... >
    <uses-permission android:name="android.permission.INTERNET" />
    ...
</manifest>


2. JS和webview交互

http://mthli.github.io/Android-WebView-JavaScript
需要准备一个网站如vtasters,webview可以通过loadUrl来执行对应功能。

public class MyWebView extends WebView {
    public MyWebView(Context context) {
        ...
        getSettings().setJavaScriptEnabled(true);
        addJavascriptInterface(this, "MyName");
        ...
    }

    @JavascriptInterface
    public void example() {
        ...
    }
}