android安卓接入腾讯X5浏览器内核TBS基本使用,配置腾讯TBS

  • 更多其他页面-自定义View-实用功能合集:点击查看

使用腾讯Tbs,会导致上架google应用商城失败!

关于X5内核的一些bug解决,可以查看这些文章:
链接: 解决bug.

1.SDK导入并配置

腾讯TBS官网 : 官网.

Android Studio用户: 可在module的build.gradle文件的dependencies中添加 api 'com.tencent.tbs.tbssdk:sdk:43903’直接接入
Eclipse用户: 需要自行去官网下载sdk,并添加进去。
以下主要讲Android Studio端的配置。

2.os文件导入

接入了api后,还需自行导入os文件,否则无法使用需要从官网下载sdk文件。

找到”sdk接入示例-Android-Studio并打开
在这里插入图片描述

在main文件夹下,复制整个jniLibs文件夹到你的安卓项目中。切记请放在与java res文件夹同一级。

3.AndroidManifest.xml文件配置

加载腾讯TBS需要一定的权限,否则会失败。

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />  

到这为止基本的配置就完成了,下面开始使用腾讯的X5WebView

4.build.gradle文件配置

找到你项目app的build.gradle,在android 的 defaultConfig一栏,添加
ndk {
abiFilters “armeabi”, “armeabi-v7a”, “x86”, “mips”
}
以下是我的示例:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 29
    defaultConfig {
        applicationId "########"
        minSdkVersion 16
        targetSdkVersion 29
        versionCode 22
        versionName "2.2"
        ndk {
            abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
        }
    }

5.初始化X5WebView

下面方法复制可直接调用,记得要在加载webview之前调用,所以最好是放在打开项目的时候就调用该方法,提前加载x5替换webview配置

 /**************腾讯X5webview**************/
    private void initX5WebView() {  //使用腾讯x5 webview,解决安卓原生wenview不适配不同机型问题


        //搜集本地tbs内核信息并上报服务器,服务器返回结果决定使用哪个内核。

        QbSdk.PreInitCallback cb = new QbSdk.PreInitCallback() {

            @Override
            public void onViewInitFinished(boolean arg0) {
                // TODO Auto-generated method stub
                //x5內核初始化完成的回调,为true表示x5内核加载成功,否则表示x5内核加载失败,会自动切换到系统内核。

                if(arg0){//true
                    Log.e("腾讯X5", " onViewInitFinished 加载 成功 "+arg0);
                }else{
                    Log.e("腾讯X5", " onViewInitFinished 加载 失败!!!使用原生安卓webview "+arg0);
                }


            }

            @Override
            public void onCoreInitFinished() {
                // TODO Auto-generated method stub
            }
        };
        //x5内核初始化接口
        QbSdk.initX5Environment(getApplicationContext(),  cb);

    }
    


    /**************腾讯X5webview**************/
   

当你看到onViewInitFinished回调是true,那么就说明预加载腾讯成功

6.替换在xml里的webview布局

  <com.tencent.smtt.sdk.WebView
        android:id="@+id/TX_X5_webview"

        android:layout_width="match_parent"
        android:layout_height="match_parent">


    </com.tencent.smtt.sdk.WebView>

  //  <WebView
  //      android:id="@+id/nromal_webview"
  //      android:layout_width="match_parent"
  //      android:layout_height="match_parent">
  //  </WebView>

7.java里使用X5 webview

    com.tencent.smtt.sdk.WebView  TX_X5_webview; //全局变量
   TX_X5_webview = findViewById(R.id.TX_X5_webview);
   TX_X5_webview.setBackgroundColor(0);
   TX_X5_webview.getSettings().setJavaScriptEnabled(true);
   TX_X5_webview.loadUrl("https://www.baidu.com/");
                    

这样子就完成了腾讯X5的基本使用了。

我在使用腾讯X5Webview会遇到各种坑,像是本地测试没问题,打包出来的项目有问题等,非常令人头疼。请看另一篇文章。

链接: 加载腾讯X5失败各种bug解决.

https://blog.csdn.net/shaoyezhangliwei/article/details/81703098 使用process bar文章


Android技术生活交流

----- qq群



  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值