有那位高人用webview实现过网络视频的播放,始终无法播放,我自己搭的服务器(模拟的)
我的代码如下:
html代码:
<video id="player" name="player" src="oppo.mp4" width="300" height="100" controls="controls" autoplay="autoplay" >
Your browser does not support the video tag.
</video>
- JScript code
<script type="text/javascript"> function play(){ document.getElementById("content").innerHTML = "This Content is showed by Android invoke; player.play(); }} </script>
java代码:
- Java code
public class WebView_lancyActivity extends Activity { WebView webView; Button btn_change; Handler handler = new Handler(); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); webView = (WebView) findViewById(R.id.wv_lancy); WebSettings settings = webView.getSettings(); settings.setJavaScriptEnabled(true); /** * addJavascriptInterface()主要是和javascript进行交互,利用此接口,直接可以在web页面调用android里面的方法。<br> * obj : 一个java类,里面包含要执行的方法<br> * interfaceName : 就是给obj起一个别名<br> */ webView.addJavascriptInterface(new Object() { public void startTheGoogleMap() { handler.post(new Runnable() { @Override public void run() { // Log.i("i", "i am load the google map"); // 打开google地图 Intent mIntent = new Intent(); ComponentName component = new ComponentName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity"); mIntent.setComponent(component); startActivity(mIntent); } }); } }, "lancy_jing"); webView.loadUrl("http://192.168.1.6:8080/index2.html"); btn_change = (Button) findViewById(R.id.btn_changeContent); btn_change.setOnClickListener(new OnClickListener() { public void onClick(View v) { /** * 在android里面,可以直接使用:javascript:function()调用javascript里面定义的方法 */ webView.loadUrl("javascript:play()"); } }); }}
------解决方案--------------------
不用webView,直接打开这个网页可以播放吗?
------解决方案--------------------
发上来的JScript 代码就有误,可以播放吗?
------解决方案--------------------
1、JS有误码,少了引号;
2、手机是否支持HTML5格式,不支持的话也是无用;
3、下载个HTML5WebView,这个是扩展WebView的,要2.2版本以上支持。
------解决方案--------------------
写过类似的,好像只有极个别的手机可以,那次试的只有一部htc的,系统2.2的可以播放,其他的那几款手机都不行,建议下载一个rockplayer,程序调用这个播放器效果比较好,支持的视频格式也比较多
------解决方案--------------------
这样可能 就是webview设置的权限问题了 你看看源码里的是怎么设置的 要不要试着PluginState.ON ?
我当初做一个html5 播放 是优酷的那种普通视频 直接像ipad 那样全屏播放,不过有一些机器不支持 用到的方法也和你的不一样;