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.ConsoleMessage
android.webkit.CacheManager        com.tencent.smtt.sdk.CacheManager(deprecated)
android.webkit.CookieManager        com.tencent.smtt.sdk.CookieManager
android.webkit.CookieSyncManager        com.tencent.smtt.sdk.CookieSyncManager
android.webkit.CustomViewCallback        com.tencent.smtt.export.external.interfaces.IX5WebChromeClient.CustomViewCallback
android.webkit.DownloadListener        com.tencent.smtt.sdk.DownloadListener
android.webkit.GeolocationPermissions        com.tencent.smtt.export.external.interfaces.GeolocationPermissionsCallback
android.webkit.HttpAuthHandler        com.tencent.smtt.export.external.interfaces.HttpAuthHandler
android.webkit.JsPromptResult        com.tencent.smtt.export.external.interfaces.JsPromptResult
android.webkit.JsResult        com.tencent.smtt.export.external.interfaces.JsResult
android.webkit.SslErrorHandler        com.tencent.smtt.export.external.interfaces.SslErrorHandler
android.webkit.ValueCallback        com.tencent.smtt.sdk.ValueCallback
android.webkit.WebBackForwardList        com.tencent.smtt.sdk.WebBackForwardList
android.webkit.WebChromeClient        com.tencent.smtt.sdk.WebChromeClient
android.webkit.WebHistoryItem        com.tencent.smtt.sdk.WebHistoryItem
android.webkit.WebIconDatabase        com.tencent.smtt.sdk.WebIconDatabase
android.webkit.WebResourceResponse        com.tencent.smtt.export.external.interfaces.WebResourceResponse
android.webkit.WebSettings        com.tencent.smtt.sdk.WebSettings
android.webkit.WebSettings.LayoutAlgorithm        com.tencent.smtt.sdk.WebSettings.LayoutAlgorithm
android.webkit.WebStorage        com.tencent.smtt.sdk.WebStorage
android.webkit.WebView        com.tencent.smtt.sdk.WebView
android.webkit.WebViewClient        com.tencent.smtt.sdk.WebViewClient

布局xml里的WebView替換為 com.tencent.smtt.sdk.WebView

3、權限
<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_1new ArrayList<String>(Arrays.asList(array))));
    }
    @Override
    protected 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;
        }
    }
}





附件列表

     


    免責聲明!

    本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



     
    粵ICP備18138465號   © 2018-2025 CODEPRJ.COM