1、瀏覽器內核:
主流瀏覽器內核介紹(前端開發值得了解的瀏覽器內核歷史)
瀏覽器內核歷史介紹:
在android 4.4之前,瀏覽器用的還是webkit
在android 4.4之后,google就拋棄了webkit,只是保留了webkit中關於排版渲染方面的代碼,同時還把Browser應用給去掉了引擎方面已經換成了一個叫Chromium的內核。
Blink 其實是 WebKit 的分支,如同 WebKit 是 KHTML 的分支
Trident(IE內核)
Gecko(Firefox 內核)
WebKit 前身是 KDE 小組的 KHTML 引擎,可以說 WebKit 是 KHTML 的一個開源的分支。當年蘋果在比較了 Gecko 和 KHTML 后,選擇了后者來做引擎開發,是因為 KHTML 擁有清晰的源碼結構和極快的渲染速度。
2、騰訊x5瀏覽器內核:
X5是騰訊QQ瀏覽器產品部推出的,面向第三方開放X5內核引擎的產品服務。從目前來看,微信、手Q、空間和QQ瀏覽器都已經內置了X5內核,基本上所有的手機用戶手機里都有QQ瀏覽器X5內核了。所以第三方只要通過很小的sdk就可以調用到這些app里面的X5。
運行條件:
1) 手機ROM版本高於或等於2.2版本
2) 手機RAM大於500M,該RAM值通過手機 /proc/meminfo 文件的MemTotal動態獲取
注:如果不滿足上述條件,SDK會自動切換到系統WebView,SDK使用者不用關心該切換過程。
接入x5,有兩種:
1、Android SDK(Share Only)
這種接入方式,減少包的大小,但是需要手機本身安裝了微信(6.1版本以上)、手Q、空間。
2、Android SDK(With download)
這種接入方式,需要復制“Android SDK(With download)”的jar包到工程的libs目錄下。
在Android工程的AndroidManifest.xml中申明騰訊X5服務所需的權限:
1 <!-- 申請騰訊X5所需權限 --> 2 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 3 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 4 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 5 <uses-permission android:name="android.permission.INTERNET" /> 6 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
辨別是否使用x5webview的方法:
顯示網頁文字時,可通過長按選擇文字的標識判斷,如下水滴狀選擇效果是x5webview 的標志