X5SDK 腾讯浏览器内核
介绍
腾讯浏览服务由QQ浏览器团队出品,致力于优化移动端【webview】体验的整套解决方案,使用QQ浏览器X5内核SDK和X5云端服务,解决移动端webview使用过程中出现的一切问题,优化用户的浏览体验,同时腾讯还将持续提供后续的更新和优化,为开发者提供最新最优秀的功能和服务。X5SDK是通过调用【微信/手机QQ/空间】的X5内核,解决系统webview兼容性差、加载速度慢、功能缺陷等问题,开发接入便捷,大小只有253K,仅需几行代码,即可解决一切令开发者们头疼的问题,为用户提供最优秀的浏览体验。同时,QQ浏览器团队还将持续更新和优化X5内核,持续优化功能,并保证兼容各种web新特性。其相对于系统webview,具有下述明显优势:1) 速度快:相比系统webView的网页加载速度有近30%的提升。2) 省流量:云端优化技术使流量节省20%3) 更安全:24小时安全问题解决机制4) 更稳定:经过亿级用户的使用考验,CRASH率0.15%5) 集成强大的视频播放器,支持各种视频格式直接打开6) 适屏排版、字体设置等浏览增强功能的提供7) Html5更完整支持。8) 无系统内核的碎片化问题,更少的兼容性问题X5云端服务是通过云端技术保证用户在未装QQ浏览器的情况下同样可以使用X5内核提供的优秀服务,包括云加速、云安全、云转换三大功能。云加速是通过首屏加速、智能路由、图片压缩等技术保障网页浏览的快、省、悦;云安全是通过URL安全检测、JS黑名单管理、负载监控等保障网页浏览的安全稳定;云转换是使用URL聚合+XPATH的解决方案,解决移动阅读难题。运行环境1)手机ROM版本高于或等于2.2版本2)手机RAM大于500M,该RAM值通过手机 /proc/meminfo 文件的MemTotal动态获取注:如果不满足上述条件,SDK会自动切换到系统WebView,SDK使用者不用关心该切换过程。辨别是否使用x5webview的方法:显示网页文字时,可通过长按选择文字的标识判断,如下水滴状选择效果是x5webview 的标志:
接入文档
1、下载X5内核jar包,复制到工程的libs目录下。2、将源码和XML里的系统包和类替换为SDK里的包和类,具体对应如下:系统内核SDK内核android.webkit.ConsoleMessage com.tencent.smtt.export.external.interfaces.ConsoleMessageandroid.webkit.CacheManager com.tencent.smtt.sdk.CacheManager(deprecated)android.webkit.CookieManager com.tencent.smtt.sdk.CookieManagerandroid.webkit.CookieSyncManager com.tencent.smtt.sdk.CookieSyncManagerandroid.webkit.CustomViewCallback com.tencent.smtt.export.external.interfaces.IX5WebChromeClient.CustomViewCallbackandroid.webkit.DownloadListener com.tencent.smtt.sdk.DownloadListenerandroid.webkit.GeolocationPermissions com.tencent.smtt.export.external.interfaces.GeolocationPermissionsCallbackandroid.webkit.HttpAuthHandler com.tencent.smtt.export.external.interfaces.HttpAuthHandlerandroid.webkit.JsPromptResult com.tencent.smtt.export.external.interfaces.JsPromptResultandroid.webkit.JsResult com.tencent.smtt.export.external.interfaces.JsResultandroid.webkit.SslErrorHandler com.tencent.smtt.export.external.interfaces.SslErrorHandlerandroid.webkit.ValueCallback com.tencent.smtt.sdk.ValueCallbackandroid.webkit.WebBackForwardList com.tencent.smtt.sdk.WebBackForwardListandroid.webkit.WebChromeClient com.tencent.smtt.sdk.WebChromeClientandroid.webkit.WebHistoryItem com.tencent.smtt.sdk.WebHistoryItemandroid.webkit.WebIconDatabase com.tencent.smtt.sdk.WebIconDatabaseandroid.webkit.WebResourceResponse com.tencent.smtt.export.external.interfaces.WebResourceResponseandroid.webkit.WebSettings com.tencent.smtt.sdk.WebSettingsandroid.webkit.WebSettings.LayoutAlgorithm com.tencent.smtt.sdk.WebSettings.LayoutAlgorithmandroid.webkit.WebStorage com.tencent.smtt.sdk.WebStorageandroid.webkit.WebView com.tencent.smtt.sdk.WebViewandroid.webkit.WebViewClient com.tencent.smtt.sdk.WebViewClient布局xml里的WebView替换为 com.tencent.smtt.sdk.WebView3、权限<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" />4、其他一大堆的不太常用的东西请看官网
测试Activity
public class MainActivity extends ListActivity {protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);String[] array = { "普通网页", "动画", "视频", "视频,美人鱼", "福利金融,安全保障", "福利金融,理财学院", "福利金融,介绍", };setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, new ArrayList<String>(Arrays.asList(array))));}@Overrideprotected void onListItemClick(ListView l, View v, int position, long id) {switch (position) {case 0:X5WebViewActivity.launche(this, "普通网页", "http://www.cnblogs.com/baiqiantao/");break;case 1:X5WebViewActivity.launche(this, "动画", "http://thewebrocks.com/demos/cubes/");break;case 2:X5WebViewActivity.launche(this, "视频", "http://www.w3school.com.cn/tiy/t.asp?f=html5_av_met_play_pause");break;case 3:X5WebViewActivity.launche(this, "视频,美人鱼", "http://v.qq.com/cover/x/xg95sxi4q7zc4uo.html");break;case 4:X5WebViewActivity.launche(this, "福利金融,安全保障", "http://wap.100cb.cn/static/security.html");break;case 5:X5WebViewActivity.launche(this, "福利金融,理财学院", "http://fulijinrong.kuaizhan.com/58/36/p32451810370302");break;case 6:X5WebViewActivity.launche(this, "福利金融,介绍", "http://wap.flh001.com/static/1minute/index.html");break;}}}
附件列表
X5SDK 腾讯浏览器内核的更多相关文章
- android 腾讯x5内核 浏览器
1.浏览器内核: 主流浏览器内核介绍(前端开发值得了解的浏览器内核历史) 浏览器内核历史介绍: 在android 4.4之前,浏览器用的还是webkit 在android 4.4之后,google就抛 ...
- 静态集成腾讯TBS X5内核WebView,从微信提取新版30M浏览器内核打包进apk
目录 前情提要 第一步:下载老版本SDK得到jar 获取SDK 集成SDK 步骤二.下载提取最新TBS X5内核 方法1:从微信中提取 方法2:App内内访问tbs调试页安装新内核 步骤三.集成内核到 ...
- 几大主流浏览器内核(Rendering Engine)
"浏览器内核",英文为"Rendering Engine",也叫"渲染引擎",作用是帮助浏览器来渲染网页的内容,将页面内容和排版代码转换为用 ...
- 各大浏览器内核介绍(Rendering Engine)
在介绍各大浏览器的内核之前,我们先来了解一下什么是浏览器内核. 所谓浏览器内核就是指浏览器最重要或者说核心的部分"Rendering Engine",译为"渲染引擎&qu ...
- CSS3动画处理浏览器内核时候前缀(兼容性)
Gecko内核 css前缀为"-moz-" 火狐浏览器 WebKit内核 css前缀为"-webkit-" Comodo Drangon(科摩多龙), ...
- css3中-moz、-ms、-webkit,-o分别代表的意思,以及微信浏览器内核分析
这种方式在业界上统称:识别码.前缀 //-ms代表[ie]内核识别码 //-moz代表火狐[firefox]内核识别码 //-webkit代表谷歌[chrome]/苹果[safari]内核识别码 // ...
- 浏览器内核与js引擎
摘要: 面试一个大公司的时候问到了一个问题,让我谈谈主要的浏览器内核以及他们的特点,当时并没有详细的回答,回来之后自己在网上找了找资料,总结了下分享给大家. 简介: 在维基百科上是这样介绍浏览器内核的 ...
- <转>浏览器内核分类
浏览器的种类成千上百,但所基于的内核,却没有几个.目前主流的浏览器内核主要为以下四种: 一.Trident内核,代表产品Internet Explorer说起Trident,很多人都会感到陌生,但提起 ...
- 浏览器内核-Webkit
关键字:浏览器内核,浏览器引擎,Browser,Webkit,Blink,Chromium. 本文简单介绍一下各种浏览器内核.着种介绍一下Webkit.顾名思义,浏览器内核就是浏览器的核心部分,也可以 ...
随机推荐
- hdu 4631(最近点对,容器)
点击打开链接 题意: 给你一个平面,每次加入一个点,当点数>=2时,求最近点对距离的平方,最后输出所有的平方和. 给你a,b,c x[0]=0;x[i]=(x[i-1]*a+b)%c 如果按照平 ...
- underscorejs-every学习
2.10 every 2.10.1 语法: _.every(list, predicate, [context]) 2.10.2 说明: 对list集合的每个成员根据predicate进行真值检测,如 ...
- Windows下命令行连接mysql及导入sql文件
嗯,今天要把phpcms的模板放到服务器上,,,呃,phpMyAdmin死活连接不上数据库,这又是个神马情况无奈,又想到命令行了,好吧,最近喜欢上命令行了,不过这果然还是命令行强大啊,啊哈哈下面呢,我 ...
- php转化输入日期为Unix 纪元到当前时间的秒数 日期筛选
多条件筛选时 日期筛选 部分 demo http://pan.baidu.com/s/1hqGF5Ik 时间输入控件http://www.jq22.com/jquery-info332 输入控件 ...
- jquery easy ui 学习 (3) window 限制在父类窗体内
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Android之Activity生命周期简介
概述 有图有真相,所以先上图: 上图是从Android官网截下的Activity的生命周期流程图,结构非常清晰,它描述了Activity在其生命周期中所有可能发生的情况以及发生的先后顺序,下面就将结合 ...
- 【Git】Git远程操作详解
Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...
- [Android] createTrack_l
在分析AudioTrack的时候,第一步会new AudioTrack,并调用他的set方法.在set方法的最后调用了createTrack_l创建音轨.我们现在来分析createTrack_l的流程 ...
- 利用Keil u4调试,精确实现软件延时
用定时器延时,有时候显得有点麻烦,我们不如考虑软件精确延时,软件延时无非就是利用for或while多重循环.以前用到延时函数时,都是从网上下载别人写好的延时子程序.延时5ms,400ms,1s,……, ...
- haskell入门
斯坦福公开课<编程范式>中介绍了Scheme(但是不仅仅是Scheme,它只是作为函数式语言的代表),最后一课介绍了Haskell... “Hello World!”是学习一门语言的魔咒 ...