1.腾讯X5浏览器 sdk 官网 地址
腾讯浏览服务
2.腾讯X5 浏览器 sdk 加载
需要内存卡权限 加载成功率才高,因为有了内存读取权限,可以读取腾讯QQ 和微信的X5 内核,共用他们的内核,不需要下载。
PS: 腾讯写sdk demo的菜的抠脚
3.腾讯加载X5 工具类
最好写到业务类中,得到内存卡权限后,去调用
public class X5Utils {
/**
* 传应用层的Content
* @param context getApplicationContext
*/
public static void initX5WebView(Context context) {
// QbSdk.setDownloadWithoutWifi(true); //可以用流量下载
HashMap map = new HashMap();
map.put(TbsCoreSettings.TBS_SETTINGS_USE_SPEEDY_CLASSLOADER, true);
map.put(TbsCoreSettings.TBS_SETTINGS_USE_DEXLOADER_SERVICE, true);
QbSdk.initTbsSettings(map);
QbSdk.PreInitCallback cb = new QbSdk.PreInitCallback() {
@Override
public void onViewInitFinished(boolean arg0) {
MyApplication.x5InitFinish = arg0;
//x5內核初始化完成的回调,为true表示x5内核加载成功,否则表示x5内核加载失败,会自动切换到系统内核。
Log.e("lsw", " onViewInitFinished is " + arg0);
if (arg0) {
Log.e("lsw", " onViewInitFinished ok ------ ");
} else {
Log.e("lsw", "X5 加载失败!!!");
}
}
@Override
public void onCoreInitFinished() {
LogUtil.e("onCoreInitFinished -- ");
}
};
//x5内核初始化接口
QbSdk.initX5Environment(context, cb);
QbSdk.setTbsListener(new TbsListener() {
@Override
public void onDownloadFinish(int i) {
//tbs内核下载完成回调
LogUtil.e("onDownloadFinish = " + i);
MyApplication.downloadSuccess = i;
}
@Override
public void onInstallFinish(int i) {
//内核安装完成回调,
LogUtil.e("onInstallFinish = " + i);
}
@Override
public void onDownloadProgress(int i) {
//下载进度监听
MyApplication.x5Progress = i;
LogUtil.e("onDownloadProgress = " + i);
}
});
}
}
当前时间 2021-2-4 下载的内核版本号 45514
sdk lib 版本 tbs_sdk_thirdapp_v4.3.0.67_43967_sharewithdownloadwithfile_withoutGame_obfs_20200923_120452.jar
因为官网添加隐私协议,上面的版本号43967 已经不好使用了 。看一下问题中 ( 二、历史常见问题:第二个问题)
------------------------------------
TBS SDK 近期热点问题汇总
最新 SDK:44115
近期热点问题:(2021.11.4)
1、SDK版本更新(Maven Central接入):api 'com.tencent.tbs:tbssdk:44115'
2、周五周六(18:00-21:00)debugtbs.qq.com下载不了内核?
A:服务器维护期不支持下载。
3、多次卸载重装、重启都加载不了内核,通过 debugtbs.qq.com 也下载不了,显示“不需要下载”?
A:大概率是DNS出现了问题,尝试链接 Wi-Fi,并调整手机 DNS代理至 114.114.114.114
二、历史常见问题:
1、已经实现了CustomView相关方法,但使用TBS SDK的webview时,h5视频全屏按钮不生效?
该问题为系统内核下的已知问题,并于44085版本SDK中修复。
2、TBS SDK是否有隐私合规相关说明?
请使用最新版TBS SDK >= 44085,官网下载包内提供了隐私合规说明文档腾讯浏览服务以及隐私接口调用说明文档
3、可以通过什么渠道获取TBS最新版本SDK?
方式一:通过官网下载,手动接入 腾讯浏览服务-SDK下载
方式二:MavenCentral接入。在根目录 build.gradle 添加 mavenCentral() 库索引,在模块中引入依赖:api 'com.tencent.tbs:tbssdk:44115'
ps:使用方式二时,请阅读隐私文档(腾讯浏览服务 及 官网下载包内的隐私接口使用文档
4、首次安装应用,一直加载不起 X5 内核?
首次安装应用时,本应用下没有内核,通常会触发异步内核下载,此时本App下没有x5内核可用,将采用系统内核,下次启动再使用下载的内核。
TBS首次加载时采用加载sdcard卡中通用版本备份内核的策略来提高初次加载成功率(由于Android 23开始读取sdcard需要用户授权,因此建议和用户说明并获取存储权限来提高初次加载成功率)。首次加载起内核后,后续启动加载将直接读取本App下的内核,不再使用存储权限。
5、经常遇到因为流控而导致无法下载到内核的情况,如何优化解决?
由于庞大的用户量,对于X5下载内核会有带宽压力,后台会根据当前的流量情况去流控请求,稍后再试。建议优化:请求SD卡授权,加载稳定备份内核。
6、本地无内核可用,且TbsListener.onDownLoadFinished()返回错误码 110 ?
该情况在本地无内核时,大概率命中了流控,可通过debugtbs.qq.com手动安装线上内核。
7、如何查看TBS相关信息?如何进行TBS调试?
使用设置了 WebViewClient 的TBS SDK的 webview 打开 https://debugtbs.qq.com,会出现 TBS调试工具页面。
8、是否有静态内核接入方案?
静态接入版本已不再维护与发布,请接入官方最新动态下发内核的SDK版本。
9、下载不到内核时,如何获取并加载内核?
使用debugtbs.qq.com工具,点击安装线上内核。若提示115,在周五周六晚属于正常运维,或者此时环境为x86模拟器等x5内核不支持的环境,请使用真机再次尝试。
10、内核已经下载却加载不起来?debugtbs.qq.com能看到内核信息,但打不开debugx5.qq.com?
自查一下是否调用了QbSdk.forceSysWebView()
11、使用文件能力的插件依赖于x5内核,但内核有加载失败的情况怎么办?
参考 2.4、2.5,建议通过:
(1)首次打开应用尽量在wifi下
(2) 调用QbSdk.setDownloadWithoutWifi允许4G下载
(3)获取sdcard存储权限使用备份稳定内核
等手段提高x5占比来规避系统内核情况。