android首次加载X5 webview,会产生卡顿现象的解决办法

在application初始化:

QbSdk.initX5Environment

启动APP后,首次webView.loadUrl,出现严重的卡顿现象;

X5 SDK的v3.6版本后添加了一个多进程的service 设置开启优化方案,具体实现如下:

第一种 多进程方案: 设置开启优化方案

// 在调用TBS初始化、创建WebView之前进行如下配置,以开启优化方案
HashMap map = new HashMap();
map.put(TbsCoreSettings.TBS_SETTINGS_USE_SPEEDY_CLASSLOADER, true);
QbSdk.initTbsSettings(map);

增加Service声明 :在AndroidManifest.xml中增加内核首次加载时优化Service声明;
该Service仅在TBS内核首次Dex加载时触发并执行dex2oat任务,任务完成后自动结束;

<service  
    android:name="com.tencent.smtt.export.external.DexClassLoaderProviderService"    
    android:label="dexopt"
    android:process=":dexopt"
/>

第二种 多进程方案:仅Android 5.1+生效)
1、// 在调用TBS初始化、创建WebView之前进行如下配置,以开启优化方案

HashMap map = new HashMap();
map.put(TbsCoreSettings.TBS_SETTINGS_USE_SPEEDY_CLASSLOADER,true);
QbSdk.initTbsSettings(map);


2、) 多线程方案策略配置

// 在调用TBS初始化、创建WebView之前进行如下配置,以开启优化方案
HashMapmap = new HashMap();
// 配置不使用多进程策略,即该方案仅在Android 5.1+系统上生效。
map.put(TbsCoreSettings.TBS_SETTINGS_USE_DEXLOADER_SERVICE, false);
QbSdk.initTbsSettings(map);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值