android x5播放视频服务,Android实现视频播放--腾讯浏览服务(TBS)功能

3.使用

直接在清单文件AndroidManifest.xml中配置SDK中的视频播放Activity

在代码中直接调用TbsVideo.openVideo()播放

/**

* 直接调用播放视频

* @param videoUrl 视频地址

*/

private void startPlay(String videoUrl){

//判断当前是否可用

if(TbsVideo.canUseTbsPlayer(getApplicationContext())){

//播放视频

TbsVideo.openVideo(getApplicationContext(), videoUrl);

}

}

4.添加权限

效果图

b707c972fd5fbf43cf90310dec502015.png

优化

先看一下优化之后的效果

5ed8d8e4722591d17dd91ba3525f4d24.png

9399e6a690c874784ee29543b43ee618.png

自定义TBS的WebView,充分发挥X5内核的作用

1.自定义webview

需继承TBS的webview,包一定不能导错:com.tencent.smtt.sdk.WebView

public class X5WebView extends WebView {

private WebViewClient client = new WebViewClient() {

/**

* 防止加载网页时调起系统浏览器

*/

public boolean shouldOverrideUrlLoading(WebView view, String url) {

view.loadUrl(url);

return true;

}

};

@SuppressLint("SetJavaScriptEnabled")

public X5WebView(Context arg0, AttributeSet arg1) {

super(arg0, arg1);

this.setWebViewClient(client);

initWebViewSettings();

this.getView().setClickable(true);

}

/**

* 初始化webview设置

*/

private void initWebViewSettings() {

WebSettings webSetting = this.getSettings();

...

}

/**

* 这里可以为自定义webview绘制背景或文字

* @param canvas

* @param child

* @param drawingTime

* @return

*/

@Override

protected boolean drawChild(Canvas canvas, View child, long drawingTime) {

boolean ret = super.drawChild(canvas, child, drawingTime);

canvas.save();

...

return ret;

}

public X5WebView(Context arg0) {

super(arg0);

setBackgroundColor(85621);

}

}

2.布局中使用自定义WebView

3.使用自定义WebView播放视频

/**

* 使用自定义webview播放视频

* @param vedioUrl 视频地址

*/

private void startPlay(String vedioUrl) {

x5webView.loadUrl(vedioUrl);

getWindow().setFormat(PixelFormat.TRANSLUCENT);

x5webView.getView().setOverScrollMode(View.OVER_SCROLL_ALWAYS);

x5webView.setWebChromeClient(new WebChromeClient());

}

4.支持横竖屏切换

在AndroidManifest.xml中给当前Activity配置configChanges属性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值