一、目标与思路:
在使用cordova(webview)的Android工程里,需要加载远程的h5页面,为了减少流量的消耗,同时也为了提高h5的加载速度,
我们可以把h5页面用到的js库,通过本地注入,替代从网络上加载。
二、实现原理:
在loadurl("http://xxx");之后,在onPageFinished消息收到后,进行js注入。注入的方法参考了一个cordova插件的实现:
https://github.com/TruckMovers/cordova-plugin-remote-injection
从源码,可以获取到注入方法。
三、实现步骤(需要添加的代码)
我测试使用的环境:加入了cordova(webview)的Android工程(参见cordoava创建工程,并添加平台之后的到的工程),
在使用cordova(webview)的Android工程里,需要加载远程的h5页面,为了减少流量的消耗,同时也为了提高h5的加载速度,
我们可以把h5页面用到的js库,通过本地注入,替代从网络上加载。
二、实现原理:
在loadurl("http://xxx");之后,在onPageFinished消息收到后,进行js注入。注入的方法参考了一个cordova插件的实现:
https://github.com/TruckMovers/cordova-plugin-remote-injection
从源码,可以获取到注入方法。
三、实现步骤(需要添加的代码)
我测试使用的环境:加入了cordova(webview)的Android工程(参见cordoava创建工程,并添加平台之后的到的工程),
也可以参考我的另一篇文章:
http://blog.csdn.net/robert_cysy/article/details/77072961
四、实现代码只有以下部分:h5页面不提供
import android.Manifest;
import android.annotation.TargetApi;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
import android.content.res.AssetManager;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import