腾讯浏览服务X5内核的Webview

一、简介

目的:解决系统webview兼容性差、加载速度慢、功能缺陷等问题。
(Android4.4 以下 webKit内核,Android 4.4+ Chrome内核。)
官方:依托X5内核强大的能力,致力于提供优化移动端浏览体验的整套解决方案。
官网:https://x5.tencent.com/tbs/

二、简单使用

1.下载jar包添加到项目libs目录。
2.在配置清单文件,添加权限。

  
  
  
  
  

3.Application的onCreate()方法里配置

QbSdk.initX5Environment(getApplicationContext(), new QbSdk.PreInitCallback() {
            @Override
            public void onCoreInitFinished() {
                //x5内核初始化完成回调接口,此接口回调并表示已经加载起来了x5,有可能特殊情况下x5内核加载失败,切换到系统内核。
            }
            @Override
            public void onViewInitFinished(boolean b) {
                //x5內核初始化完成的回调,为true表示x5内核加载成功,否则表示x5内核加载失败,会自动切换到系统内核。
                Log.e("wy","加载内核是否成功:"+b);
            }
        });

注:如果加载内核失败:false,可能是没有配置ndk

 ndk {
          abiFilters 'armeabi' , 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
        }

4.布局文件xml中,webview必须是com.tencent.smtt.sdk.WebView


5.Activity中使用和正常webview一样,只是导入包必须是com.tencent.smtt.sdk的包

import com.tencent.smtt.sdk.WebChromeClient;
import com.tencent.smtt.sdk.WebSettings;
import com.tencent.smtt.sdk.WebView;
import com.tencent.smtt.sdk.WebViewClient;
 WebSettings settings = mBinding.web.getSettings();
        settings.setJavaScriptEnabled(true);
        //设置WebView是否使用viewport
        settings.setUseWideViewPort(true);
        //设置WebView是否使用预览模式加载界面。
        settings.setLoadWithOverviewMode(true);
        //设置WebView是否支持使用屏幕控件或手势进行缩放
        settings.setSupportZoom(true);
        //设置WebView是否使用其内置的变焦机制,该机制集合屏幕缩放控件使用
        settings.setBuiltInZoomControls(true);

注意:记得适配所有的cpu的机型,build.config文件

ndk {
        abiFilters"armeabi","armeabi-v7a","x86","mips"
    }

你可能感兴趣的:(腾讯浏览服务X5内核的Webview)