抛弃Android自带webview浏览器内核,使用腾讯X5服务webview浏览器

首先:下载腾讯X5服务所需的jar包,请戳这里    

            下载腾讯X5示例demo(安装运行主要用于加载X5服务,安装完成后,退出即可) 请戳这里

其次:在Android工程的AndroidManifest.xml中申明腾讯X5服务所需的权限。如下:请戳这里

<!-- 申请腾讯X5所需权限 -->
    <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" />

代码布局文件的引用如下:

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

activity中的代码示例如下:

public class TencentX5WebActivity extends Activity{
	private com.tencent.smtt.sdk.WebView tencent_webview;
	private String url = "http://wap.baidu.com";  
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_tencentx5);  

		getWindow().setFormat(PixelFormat.TRANSLUCENT);  
		getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE | WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);  
		init();  

	}

	@SuppressLint("SetJavaScriptEnabled")
	private void init() {
		// TODO Auto-generated method stub
		tencent_webview = (WebView) findViewById(R.id.tencent_webview);
		tencent_webview.loadUrl(url);  
		WebSettings webSettings = tencent_webview.getSettings();  
		webSettings.setJavaScriptEnabled(true);  
		tencent_webview.setWebViewClient(new WebViewClient() {  
			@Override  
			public boolean shouldOverrideUrlLoading(WebView view, String url) {  
				view.loadUrl(url);  
				return true;  
			}  
		});  

	}

	@Override  
	public boolean onKeyDown(int keyCode, KeyEvent event) {  
		if (keyCode == KeyEvent.KEYCODE_BACK && tencent_webview.canGoBack()) {  
			tencent_webview.goBack();// 返回前一个页面  
			return true;  
		}  
		return super.onKeyDown(keyCode, event);  
	}  


}

最后验证运行你的Android工程就可以了( 接入成功的标志:双水滴复制文字选中区域


腾讯X5内核是一款支持多进程、支持硬件加速、支持自定义内核扩展的WebView内核。在Android开发中,使用腾讯X5内核可以提高WebView的性能和稳定性,下面是一些优化和实践总结: 1. 引入腾讯X5内核 引入腾讯X5内核需要在项目中添加相应的依赖库,然后在代码中进行初始化和使用。具体步骤可以参考腾讯官方文档。 2. 启用硬件加速 在使用腾讯X5内核时,可以启用硬件加速来提高WebView的渲染速度。具体可以通过设置WebView的LayerType属性来实现,例如: ``` webView.setLayerType(View.LAYER_TYPE_HARDWARE, null); ``` 3. 使用预加载 预加载可以在用户点击链接之前就开始加载下一页的内容,以提高用户体验和减少页面加载时间。腾讯X5内核提供了预加载功能,可以通过设置WebView的预加载模式来实现,例如: ``` webView.getX5WebViewExtension().setPageCacheCapacity(5); // 设置最大缓存页面数为5 webView.getX5WebViewExtension().setPreload(true); // 开启预加载模式 ``` 4. 优化JSBridge通信 JSBridge是一种用于WebView和Native代码之间通信的技术,但是在使用过程中容易出现性能问题。为了优化JSBridge通信,可以使用腾讯X5内核提供的基于V8引擎的JSBridge,它可以提高通信效率和稳定性。 5. 避免WebView内存泄漏 在使用WebView时,需要注意避免内存泄漏问题。具体可以通过以下方式来避免: - 及时释放WebView对象 - 使用静态内部类或弱引用来持有WebView对象 - 在Activity的onDestroy()方法中调用WebView的destroy()方法 总之,腾讯X5内核是一款非常强大的WebView内核,可以帮助我们优化WebView的性能和稳定性。在使用中,需要注意以上几点优化和实践。
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值