初始化X5服务

//在application中初始化
@Override
public void onCreate() {
super.onCreate();

//搜集本地tbs内核信息并上报服务器,服务器返回结果决定使用哪个内核。
QbSdk.PreInitCallback callback = new QbSdk.PreInitCallback() {
@Override
public void onViewInitFinished(boolean arg) {
//x5內核初始化完成的回调,
// true表示x5内核加载成功,
// false表示x5内核加载失败,会自动切换到系统内核。
}

@Override
public void onCoreInitFinished() {
}
};

QbSdk.initX5Environment(getApplicationContext(), callback);
}

在布局中添加 WebView

<com.tencent.smtt.sdk.WebView
android:id="@+id/webview"
android:layout_width=“match_parent”
android:layout_height=“match_parent” />

初始化 Webview

public class MainActivity extends AppCompatActivity {
private ProgressBar progressBar;
private WebView webView;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
progressBar = findViewById(R.id.progressbar);
webView = findViewById(R.id.webview);
initWebView();
}

private void initWebView() {
WebSettings settings = webView.getSettings(); //和系统webview一样
settings.setJavaScriptEnabled(true); //支持Javascript 与js交互
settings.setJavaScriptCanOpenWindowsAutomatically(true);//支持通过JS打开新窗口
settings.setAllowFileAccess(true); //设置可以访问文件
settings.setSupportZoom(true); //支持缩放
settings.setBuiltInZoomControls(true); //设置内置的缩放控件
settings.setUseWideViewPort(true); //自适应屏幕
settings.setSupportMultipleWindows(true); //多窗口
settings.setDefaultTextEncodingName(“utf-8”); //设置编码格式
settings.setAppCacheEnabled(true);
settings.setDomStorageEnabled(true);
settings.setAppCacheMaxSize(Long.MAX_VALUE);
settings.setCacheMode(WebSettings.LOAD_NO_CACHE); //缓存模式
webView.setWebViewClient(new WebViewClient() {

@Override
public void onPageStarted(WebView webView, String s, Bitmap bitmap) {
super.onPageStarted(webView, s, bitmap);
}

@Override
public void onPageFinished(WebView webView, String s) {
super.onPageFinished(webView, s);
}

@Override
public boolean shou

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

ldOverrideUrlLoading(WebView webView, String url) {
webView.loadUrl(url);
return true;
}

@Override
public void onReceivedSslError(WebView webView, SslErrorHandler sslErrorHandler, SslError sslError) {
// super.onReceivedSslError(webView, sslErrorHandler, sslError);
sslErrorHandler.proceed();//忽略SSL证书错误
}
});

webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView webView, String s, String s1, JsResult jsResult) {
return super.onJsAlert(webView, s, s1, jsResult);
}

@Override
public void onReceivedTitle(WebView webView, String s) {
super.onReceivedTitle(webView, s);
}

@Override
public void onProgressChanged(WebView webView, int progress) {
super.onProgressChanged(webView, progress);
if(…){

progressBar.setProgress(progress); //设置进度条

} else {

}
}
}
});
webView.loadUrl(“http://www.baidu.com”);
// webView.reload(); 刷新页面
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && webView != null && webView.canGoBack()) {
webView.goBack();
return true;

Android集成三方浏览器之X5内核,从入门到精通相关推荐

  1. Android集成三方浏览器之X5内核,讲的明明白白

    腾讯 X5 内核也是基于 chromium 的,相比原生的 WebView 而言,优化了用户的浏览体验.SDK 是通过共享使用用户手机上微信.手机QQ.QQ空间等软件已经下载好的 X5 内核.SDK ...

  2. Android集成三方浏览器之Crosswalk

    上一篇讲解了腾讯 X5 内核的集成,这一篇是讲解 Crosswalk 的集成 Crosswalk 也是采用了Chromenium 内核,是一款开源的 web 引擎,开发者可以直接把 Crosswalk ...

  3. 腾讯浏览服务X5内核集成

    腾讯浏览服务X5内核集成 导读 1.什么是X5内核? 2.需求场景 3.开始搬砖 4.优化 5.集成后的问题 6.补充 一.什么是X5内核? 用官方文档的话说,就是解决系统webview兼容性差.加载 ...

  4. [转]Android 和 iPhone 浏览器之战,第 2 部分: 为 iPhone 和 Android 构建基于浏览器的应用程序...

    简介: 本文是共两部分的系列文章 "Android 和 iPhone 浏览器之战" 的第 2 部分,主要关注为 iPhone 和 Android 开发基于浏览器的应用程序.在第 1 ...

  5. Android使用腾讯浏览服务X5内核

    [前期准备] 腾讯X5 jar包下载地址 [点击打开] 本次完整DEMO源码 [打开Github] [集成步骤] 第一步:下载jar包添加到项目 第二步:添加权限 [java] view plainc ...

  6. TencentTbs腾讯浏览服务 x5内核使用

    Tencent TBS (下简称TBS) 腾讯浏览服务 What is it? 百度百科解释: 腾讯浏览服务(Tencent Browsing Service,以下简称TBS),由腾讯X5浏览服务升级 ...

  7. Android:删除腾讯X5内核的右上角设备信息

    看java部分 里面有一个 drawChild方法,注释掉就行

  8. 告别XML,Android新声明式UI框架《Jetpack Compose入门到精通》最全开发指南

    什么是Jetpack Compose? Jetpack Compose是Android的新声明式UI框架.长期以来, Android 开发人员习惯于使用带有状态视图的xml编写UI,这些状态视图通过逐 ...

  9. Android 使用腾讯的TBS浏览器X5内核的集成加载pdf等文件

    我们正常项目使用原生webview加载h5页面也是没问题的,但是当使用原生webview加载h5出问题了,h5地址在微信等可以正常使用,前端就会丢锅给我们,为了杜绝不是我们Android的问题,那我们 ...

  10. SpringBoot从入门到精通教程(二十九)- 微信企业支付集成(五分钟集成)

    需求背景 SpringBoot用法:微信企业支付集成(五分钟集成) 问题痛点 通过SpringBoot框架,集成服务端微信企业支付接口,做到下载即用(填写好相关微信支付后台相关Key信息),最快五分钟 ...

最新文章

  1. 人脸检测库libfacedetection介绍
  2. 听说过代码洁癖,还没听说过有 Bug 洁癖的?
  3. 前端抢饭碗系列之Vue项目如何做单元测试
  4. webpack-dev-server 搭建本地服务以及浏览器实时刷新
  5. 极光无限渗透测试面经_认识工业以太网及线缆测试
  6. Silverlight 5 Beta新特性[5]隐式模板支持
  7. 基于MATLAB的平面刚架有限元分析,基于MATLAB的平面刚架静力分析.pdf
  8. docker与虚拟机性能比较
  9. Head First 设计模式 —— 单例模式(Singleton)
  10. 《程序员之禅》一一2.2 佛教中的“小鬼”
  11. 木马病毒 与后门技术
  12. android蓝牙取sbc音频数据
  13. linux三星电脑开机怎么进入页面,三星Samsung笔记本电脑开机进入BIOS的方法与BIOS设置全功能菜单(F2)...
  14. 菜单下拉列表怎么实现慢慢出现效果-----过渡(transition)
  15. 平安人寿优+计划广纳英才,平安代理人实现职涯发展
  16. 网线插座板上网络模块接线
  17. mysql 汉字笔画排序规则_SQL Server 与MySQL中排序规则与字符集相关知识的一点总结...
  18. 三天写完毕业论文——经验分享
  19. redis 3.0.7 cluster 集群部署
  20. SEO动态渲染的烟雾测试

热门文章

  1. 菜鸟教程学习Java
  2. C语言实例--百钱买百鸡
  3. 这个为生信学习打造的开源 Python 文字教程真香!!!
  4. 使用V-ASSISTANT软件配置V90伺服驱动器参数的具体步骤详解
  5. 西门子1200伺服步进FB块程序 含触摸屏程序,SCL写的FB块,中文注释详细
  6. jmeter性能测试之录制脚本
  7. 2020华为软挑总结
  8. 一看就懂-grep命令详解
  9. 2021年浙江省职业院校技能大赛“新华三杯”大数据技术与应用比赛 比赛经验
  10. 使用 CleanWipe 解决Symantec Endpoint Protection卸载需要密码问题