Android在线查看文档——TBS

TBS(腾讯浏览服务)

基于X5内核,好像官网说QQ、微信、QQ浏览器的在线查看也是用的X5,只要手机安装其中一种就支持。

使用

  1. 下载SDK,解压。将接入实例中 lib 下的 .jar 包放到自己项目里,将 jniLibs 拷到 main 目录下,与 java 、 res 同级目录;

  2. build.gradle 导入 ndk ,不用在gradle.properties文件中加上Android.useDeprecatedNdk=true,Sync now! Sync now! Sync now!!! 一定要同步项目;

		ndk {
     
            abiFilters "armeabi"
        }
  1. AndroidManifest 中添加权限;
    注意先添加权限,再初始化X5内核。

  2. 使用方法见官网。

使用中的问题

加载内核失败:

原因:一开始想在自定义的Application里 initX5Environment( ) , 第一次运行时由于未授权就开始初始化X5,肯定加载失败。
解决:添加运行时权限后面再初始化 X5。

/**
     * 初始化X5内核
     */
    private void initX5Environment() {
     
        QbSdk.initX5Environment(this, new QbSdk.PreInitCallback() {
     
            @Override
            public void onCoreInitFinished() {
     
                //x5内核初始化完成回调接口,此接口回调并表示已经加载起来了x5,有可能特殊情况下x5内核加载失败,切换到系统内核。
                Log.e("@@", "加载内核是否onCoreInitFinished成功:");
            }

            @Override
            public void onViewInitFinished(boolean b) {
     
                //x5內核初始化完成的回调,为true表示x5内核加载成功,否则表示x5内核加载失败,会自动切换到系统内核。
                Log.e("@@", "加载内核是否成功:" + b);
            }
        });
    }

.so文件

下载的SDK里只有一个 .so 文件
在这里插入图片描述
所以build.gradle 里只添加一个就行了,把“armeabi-v7”,“x86”,""什么的去掉。

		ndk {
     
            abiFilters "armeabi"
        }

这样配置后,虽然不能在虚拟机上运行,但是真的可以在手机上运行。已在三台手机上测过(Android 5.1,Android 9,还一个小米的,Android6.0 以上)
虚拟机提示:
在这里插入图片描述

你可能感兴趣的:(笔记)