Android VideoView を使用してビデオ コントロールなしで全画面ビデオを再生する PhoneGap プラグインを作成しようとしています。しかし、うまくいかないようです。プラグイン関数を呼び出しても何もしません。私は何か間違ったことをしていますか?またはこれは可能ですか?
package com.phonegap.plugins.video;
import org.json.JSONArray;
import org.json.JSONException;
import android.net.Uri;
import org.apache.cordova.api.Plugin;
import org.apache.cordova.api.PluginResult;
import android.widget.VideoView;
public class VideoPlayer extends Plugin {
@Override
public PluginResult execute(String action, JSONArray args, String callbackId) {
final Plugin that = this;
final String id = callbackId;
super.cordova.getActivity().runOnUiThread(new Runnable() {
//@Override
public void run() {
VideoView videoHolder = new VideoView(cordova.getActivity().getApplicationContext());
//setContentView(videoHolder);
videoHolder.setVideoURI(Uri.parse("file:///sdcard/Android/data/MyApp/v2.mp4"));
videoHolder.requestFocus();
videoHolder.start();
that.success(new PluginResult(PluginResult.Status.OK), id);
}
});
PluginResult result = new PluginResult(PluginResult.Status.NO_RESULT);
result.setKeepCallback(true);
return result;
}
}
私の JavaScript は次のようになります。
function VideoPlayer() {
};
VideoPlayer.prototype.play = function(url) {
cordova.exec(null, null, "VideoPlayer", "playVideo", [url]);
};
if(!window.plugins) {
window.plugins = {};
}
if (!window.plugins.videoPlayer) {
window.plugins.videoPlayer = new VideoPlayer();
}
以下のように関数を呼び出しています。
<a href='#' onclick='javascript:window.plugins.videoPlayer.play("file:///sdcard/Android/data/MyApp/v2.mp4");'>Bismillah</a>