前言:因为项目需求,需要有一些文章的打开页,安卓内置的chrome内核在加载网页和滚动的时候卡的不要不要的,受不了了,就改写为X5内核。
直接入主题吧:
第一步:先去腾讯浏览服务的官网https://x5.tencent.com/tbs/看一下接入指南。

第二步:下载官方SDK,版本按照个人需求去下载,建议连带接入示例也一起下载了,后面会需要。


第三步:将SDK放入lib文件夹下,并build path OR add library。为了避免64位手机系统在运行32位时会报错,将下载的示例文件中的JNI文件放到app下的main文件夹内,另外需要配置一下NDK,app目录下的gradle文件的defaultConfig中加入如下配置:
ndk { abiFilters"armeabi","armeabi-v7a","x86","mips" }
若配置完会无法运行,则需要在gradle.properties中写入NDK配置
Android.useDeprecatedNdk=true;

第四步:各类权限声明

第五步:将所有的关于webKit内的类都转换为android.webkit.------->com.tencent.smtt.sdk.
第六步:重写Application,在application的OnCreat方法中唤醒X5内核
@Override
public voidonCreate() {
super.onCreate();
//加载X5内核
QbSdk.PreInitCallback cb =newQbSdk.PreInitCallback() {
@Override
public voidonViewInitFinished(booleanarg0) {
//TODO Auto-generated method stub
//x5內核初始化完成的回调,为true表示x5内核加载成功,否则表示x5内核加载失败,会自动切换到系统内核。
Log.d("app"," X5加载结果 "+ arg0);
}
@Override
public voidonCoreInitFinished() {
//TODO Auto-generated method stub
}
};
//x5内核初始化接口
QbSdk.initX5Environment(getApplicationContext(), cb);
}
如果切换成功,长摁点击后会出现如下水滴状提示

到这里就基本完成了。第一次用简书,还不会用markdown,以后有时间修一下文章,客官您凑合看。
代码已提交至github:CaptureScreenWithTencentX5
欢迎fork和issues
网友评论