Android 集成腾讯 TBS X5内核,并使用 TbsReaderView 加载 .pdf 文件 您所在的位置:网站首页 x5内核怎么用 Android 集成腾讯 TBS X5内核,并使用 TbsReaderView 加载 .pdf 文件

Android 集成腾讯 TBS X5内核,并使用 TbsReaderView 加载 .pdf 文件

2024-07-13 20:55| 来源: 网络整理| 查看: 265

Android 集成腾讯 TBS X5内核,并使用 TbsReaderView 加载 .pdf 文件 tbs的接入:

腾讯官网的接入步骤: 添加链接描述 在官方文档中有各种优缺点的比较,以及比较详细的集成步骤。

自己接入过程的总结:

可以使用 下载 jar 包并编译的方式。目前最新版的 tbs 还可以使用 dependencies 的方式接入,建议使用这一种:

一、使用 dependencies 方式接入

1、在模块的 dependencies 中添加:

1api 'com.tencent.tbs.tbssdk:sdk:43903'

一步就完成了依赖。

2、初始化:|

12345678910111213141516//搜集本地tbs内核信息并上报服务器,服务器返回结果决定使用哪个内核。         QbSdk.setDownloadWithoutWifi(true);//非wifi条件下允许下载X5内核         QbSdk.PreInitCallback cb = new QbSdk.PreInitCallback() {             @Override             public void onViewInitFinished(boolean arg0) {                 //x5內核初始化完成的回调,为true表示x5内核加载成功,                 否则表示x5内核加载失败,会自动切换到系统内核。                 AppLog.e(" onViewInitFinished is " + arg0);             }             @Override             public void onCoreInitFinished() {             }         };         //x5内核初始化接口         QbSdk.initX5Environment(getApplicationContext(), cb);

这段代码最好放在 Application.onCreate 里面。可以尽量在首次加载时就可以使用X5 在初始化时,会判断有没有X5内核(一般只要安装过 QQ 微信等一些腾讯产品后,都会有X5 内核。只要Android系统里面有X5内核,就可以进行共用。)。如果有会进行加载,没有会下载。

在我使用的过程中,发现在APP首次加载时X5内核时会失败,必须要把 进程Kill之后重启才能正常使用。 在打印日志后发现即使系统有X5内核,onViewInitFinished() 回调方法依然会返回 一次/两次 false。然后才会返回true。 大概这就是首次加载会失败的原因,返回false之后就会切换到系统内核。(纯猜测,自己的解决方式是当首次加载使用不了X5内核时,就用别的替代。也是稳稳的)

3、加载 pdf 文件:(xml 文件就不贴了,就一个帧布局)

12345678910111213141516171819202122private TbsReaderView mTbsReaderView; FrameLayout pdf_rl; //创建 TbsReaderView 对象并将其添加到帧布局中 mTbsReaderView = new TbsReaderView(this, this);             pdf_rl.addView(mTbsReaderView,                     new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,                             RelativeLayout.LayoutParams.MATCH_PARENT)); //加载,就是在这一步,app首次下载时,即使有X5内核 preOpen 也会返回 false //只有 kill 进程后并重启才会有效果,这个问题搞了好久 //索性就在返回 false 之后换一种加载方式 boolean result = mTbsReaderView.preOpen(parseFormat(fileName), false);             if (result) {                 mTbsReaderView.openFile(bundle);                 }else{                 //用 PDFView 加载                 } private String parseFormat(String fileName) {         return fileName.substring(fileName.lastIndexOf(".") + 1);     }

下面是第二种接入方式:

二、下载jar包并编译方式接入:

1、在官网下载:

2、下载完成后将 jar 包放在项目的 libs 文件夹下:

3、对 运行在64 位 Android 系统的App兼容

4、在dependencies中添加

12implementation files( 'libs/tbs_sdk_thirdapp_v4.3.0.3_43903_sharewithdownloadwithfile_withoutGame_obfs_20200402_121309.jar')

然后就是上面 一 的初始化过程了



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有