1.进入https://x5.tencent.com/tbs/sdk.html
下载sdk


2.打开android studio
将jar包和so文件复制到你的demo中

修改build.gradle

android {compileSdkVersion 30buildToolsVersion "30.0.2"defaultConfig {applicationId "com.tcy.tickets"minSdkVersion 15targetSdkVersion 30versionCode 1versionName "1.0"testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"ndk {abiFilters "armeabi", "armeabi-v7a", "x86", "mips"}}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'}}
}dependencies {implementation fileTree(dir: 'libs', include: ['*.jar'])implementation 'androidx.appcompat:appcompat:1.2.0'implementation 'androidx.constraintlayout:constraintlayout:2.0.4'testImplementation 'junit:junit:4.12'androidTestImplementation 'androidx.test.ext:junit:1.1.2'androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'implementation files('libs/tbs_sdk_thirdapp_v4.3.0.67_43967_sharewithdownloadwithfile_withoutGame_obfs_20200923_120452.jar')
}

3.打开VCode,写一个主页代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><h1>HybirdDemo</h1>
</body>
</html>

4.利用anywhere插件,

(下载地址:https://www.npmjs.com/package/anywhere)
打开一个http服务

打开cmd,cd到你的html目录下面,然后运行anywhere

会自动弹出网页页面

4.
在android studio中创建
X5WebView.java
MainActivity.java
MyApplication.java
Constants.java

public class MainActivity extends AppCompatActivity {/*** 加载网页的 webview*/private X5WebView mWebView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);init();}/*** 初始化webView*/private void init() {mWebView = findViewById(R.id.web_view);mWebView.loadUrl(Constants.WEB_URL);}}
public class MyApplication extends Application {@Overridepublic void onCreate() {// TODO Auto-generated method stubsuper.onCreate();//搜集本地tbs内核信息并上报服务器,服务器返回结果决定使用哪个内核。QbSdk.PreInitCallback cb = new QbSdk.PreInitCallback() {@Overridepublic void onViewInitFinished(boolean arg0) {// TODO Auto-generated method stub//x5內核初始化完成的回调,为true表示x5内核加载成功,否则表示x5内核加载失败,会自动切换到系统内核。Log.d("app", " onViewInitFinished is " + arg0);}@Overridepublic void onCoreInitFinished() {// TODO Auto-generated method stub}};//x5内核初始化接口QbSdk.initX5Environment(getApplicationContext(), cb);}
}
public class X5WebView extends WebView {//    上下文private Context mContext;//    回调接口private OnWebViewListener onWebViewListener;public void setOnWebViewListener(OnWebViewListener onWebViewListener) {this.onWebViewListener = onWebViewListener;}public X5WebView(Context context) {super(context);init(context);}public X5WebView(Context context, AttributeSet attributeSet) {super(context, attributeSet);init(context);}public X5WebView(Context context, AttributeSet attributeSet, int i) {super(context, attributeSet, i);init(context);}public X5WebView(Context context, AttributeSet attributeSet, int i, boolean b) {super(context, attributeSet, i, b);init(context);}public X5WebView(Context context, AttributeSet attributeSet, int i, Map<String, Object> map, boolean b) {super(context, attributeSet, i, map, b);init(context);}private void init(Context context) {this.mContext = context;
//      打开此代码可使移动设备链接 chrome 调试
//        setWebContentsDebuggingEnabled(true);//        设置 jsBridgeaddJavascriptInterface(new MyJaveScriptInterface(mContext,this),"androidJSBridge");//        webView 设置initWebViewSettings();
//        webClient 设置initWebViewClient();
//        chromeClient 设置initChromeClient();}/*** webView 设置*/private void initWebViewSettings() {WebSettings webSettings = getSettings();
//        允许运行 js 代码webSettings.setJavaScriptEnabled(true);
//        不可缩放webSettings.setSupportZoom(false);webSettings.setBuiltInZoomControls(false);webSettings.setDisplayZoomControls(true);
//        设置缓存策略webSettings.setCacheMode(WebSettings.LOAD_DEFAULT);}/*** webClient 设置*/private void initWebViewClient() {//        设置网页在APP 内部打开,而不是用外部浏览器setWebViewClient(new WebViewClient() {});}/*** chromeClient 设置*/private void initChromeClient() {setWebChromeClient(new WebChromeClient() {@Overridepublic void onProgressChanged(WebView webView, int i) {super.onProgressChanged(webView, i);//                回调网页加载状态if (onWebViewListener != null) {onWebViewListener.onProgressChanged(webView, i);}}/*** 监听alert弹出框,使用原生弹框代替alert。*/@Overridepublic boolean onJsAlert(WebView webView, String s, String s1, JsResult jsResult) {AlertDialog.Builder builder = new AlertDialog.Builder(mContext);builder.setMessage(s1);builder.setNegativeButton("确定", null);builder.create().show();jsResult.confirm();return true;}});}public interface OnWebViewListener {void onProgressChanged(WebView webView, int progress);}
}
public class Constants {/*** 网页加载路径*/public static final String  WEB_URL="你的网页地址";}

MainActivity.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><com.tcy.tickets.views.X5WebViewandroid:id="@+id/web_view"android:layout_width="match_parent"android:layout_height="match_parent"></com.tcy.tickets.views.X5WebView></LinearLayout>

5.
开http权限



然后在manifest.xml里面声明一下

6.点击运行即可

android: 怎么使用腾讯X5WebView相关推荐

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

    更多其他页面-自定义View-实用功能合集:点击查看 使用腾讯Tbs,会导致上架google应用商城失败! 关于X5内核的一些bug解决,可以查看这些文章: 链接: 解决bug. 安卓原生webvie ...

  2. Android Studio快速集成讯飞SDK实现文字朗读功能

    今天,我们来学习一下怎么在Android Studio快速集成讯飞SDK实现文字朗读功能,先看一下效果图: 第一步 :了解TTS语音服务 TTS的全称为Text To Speech,即"从文 ...

  3. 视频教程-Android 项目实战-影讯-Android

    Android 项目实战-影讯 1999年开始从事开发工作,具备十余年的开发.管理和培训经验. 在无线通信.Android.iOS.HTML5.游戏开发.JavaME.JavaEE.Linux等领域都 ...

  4. Android开发-在Android里接入腾讯云推流SDK实现直播推流的功能

    前 言 如今,在国内移动互联网发展了几年的时间,移动开发技术也相对的成熟,在咱们日常使用的手机App中也少不了直播的功能,不管是娱乐类.游戏类.体育类还是教育类等的App都会有直播的功能,可以说直播的 ...

  5. Android studio 接入腾讯TBSx5内核的解决方案

      Android studio 接入腾讯TBSx5内核的解决方案 首页我们查看一下腾讯浏览服务的官网:     https://x5.tencent.com/tbs/guide/sdkInit.ht ...

  6. Android性能测试工具腾讯GT的使用

    目录 GT是什么 安装GT 使用 总结 GT是什么 GT(随身调) Android版是腾讯 MIG 专项测试组自行研发的Android APP随身调测平台,它是直接运行在手机上的"集成调测环 ...

  7. android app在腾讯开放平台认领应用给空白包签名

    http://www.zhimengzhe.com/Androidkaifa/5022.html 前言:之前公司app在腾讯开放平台认领应用时,涉及了一个问题:就是给空白包签名.然后再上传上去审核. ...

  8. Android 集成Crosswalk替换成X5WebView

    替换的Crosswalk原因想必用过的都知道 Crosswalk官方已经在2017年不维护了 Crosswalk lib包太大,导致apk体积变大 遇到的问题总结: 在Application中初始化的 ...

  9. Android Studio 使用腾讯浏览服务(替换掉系统自带的WebView)

    一.为何不直接使用内置的WebView组件? 用Android自带的WebView组件,做过一些较复杂应用的人应该都会发现,这个自带的组件很多时候真是让人无力吐嘈,主要理由有二: Android中的W ...

  10. android rom 评测,腾讯定制Android 4.0 ROM评测 附tati刷机教程

    从Nexus S刷过tita后的截图来看,该ROM的UI界面非常简单,而系统设置界面基本保持了原生界面风格.出乎人意料的是,tita并没有捆绑过多腾讯自己的应用程序(不知是不是测试版的原因). 此外, ...

最新文章

  1. 【WebMisCentral WMC】基于Extjs 4.2x的企业级用户授权认证中心系统(SSO+AM+SM),多租户SAAS应用...
  2. 扫地机器人腿是咕噜_扫地机器人|如何避免买到“智障”,看这篇
  3. nyoj-228(士兵杀敌五) hdu-1556 Color the ball
  4. 【问链-EOS公开课】第十四课 EOS从单签名到多签名
  5. 每周一起读 #02 | ICML 2019:基于粒子的变分推断加速方法
  6. Linux CentOS 修改服务器主机名hostname
  7. 对于redis底层框架的理解(一)
  8. 运行在TQ2440开发板上以及X86平台上的linux内核编译
  9. dHedge DAO和一些顶级基金向基金管理者投资14.5万sUSD
  10. 大陆集团ADAS招聘丨老司机带你现场体验自动驾驶的快感
  11. linux不能上网问题
  12. 自编基于jQuery实现分页插件
  13. 共享充电宝APP小程序开发解决方案
  14. 流媒体网络传输的技术瓶颈
  15. SCR-MCR:正则项, OGB榜单--清华唐杰-- 可扩展图学习
  16. 最短路径——Dijkstra算法与Floyd算法
  17. OA系统二十四:请假审批五:【点击“审批”后的审批弹出框】的后台逻辑;(审批结果提交的Dao层和Service层逻辑)
  18. 【NOIP 2017】Day2 T3 列队
  19. java 爬取百度云盘,百度网盘资源抓取 爬虫
  20. 一键生成mybatis

热门文章

  1. 毕业设计——房屋租赁管理系统
  2. edius裁剪快捷键_EDIUS 快捷键大全 edius常用快捷键大全
  3. HTML,模仿网易登陆界面
  4. idea+java+selenium自动化测试环境搭建
  5. java 对话 智能,如何用Java实现智能对话机器人
  6. 基于树莓派的语音机器人
  7. java 中文 语义分析,了解Javac编译器 - xinlan1964的个人页面 - OSCHINA - 中文开源技术交流社区...
  8. visio2016 数据库模型图_数据库相关术语整理
  9. HTML5期末大作业:一款基于HTML+CSS+JavaScript +Bootstrap 响应式的花店/花卉装饰/花卉网上商店/婚礼花/花束商店购物网站
  10. 流畅的python学习记录——第五章:一等函数