鸿蒙开源第三方组件——网页资源缓存组件CacheWebView

木头人_1
发布于 2021-7-27 13:45
1.2w浏览
2收藏

CacheWebView

本项目是基于开源项目CacheWebView进行ohos化的移植和开发的,可以通过项目标签以及github地址(https://github.com/yale8848/CacheWebView )追踪到原项目版本

项目介绍

  • 项目名称:缓存网页视图
  • 所属系列:ohos的第三方组件适配移植
  • 功能:CacheWebView可以定制实现WebView缓存,离线网站,让cache配置更加简单灵活
  • 项目移植状态:完成
  • 调用差异:无
  • 原项目基线版本:v2.2.1
  • 编程语言:Java

效果展示

鸿蒙开源第三方组件——网页资源缓存组件CacheWebView-鸿蒙开发者社区

安装教程

方法1.

  1. 编译har包CacheWebView.har。
  2. 启动 DevEco Studio,将编译的har包,导入工程目录“entry->libs”下。
  3. 在moudle级别下的build.gradle文件中添加依赖,在dependences标签中增加对libs目录下har包的引用。
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar', '*.har'])
	……
}
  • 1.
  • 2.
  • 3.
  • 4.
  1. 在导入的har包上点击右键,选择“Add as Library”对包进行引用,选择需要引用的模块,并点击“OK”即引用成功。

方法2.

  1. 在工程的build.gradle的allprojects中,添加HAR所在的Maven仓地址(等maven发布后进行修改)
repositories {
    maven {
        url 'https://s01.oss.sonatype.org/content/repositories/releases/' 
    }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  1. 在应用模块的build.gradle的dependencies闭包中,添加如下代码:(等maven发布后进行修改)
dependencies {
    implementation 'io.github.dzsf:cache-web-view:1.0.1'
}
  • 1.
  • 2.
  • 3.

使用说明

  1. 实例化一个WebViewCacheInterceptor对象
public void init(WebViewCacheInterceptor.Builder builder)
  • 1.
  1. 实例化一个WebViewCacheInterceptorInst对象
public static WebViewCacheInterceptorInst getInstance()
  • 1.
  1. 根据参数ResourceRequest请求,返回ResourceResponse对象
public ResourceResponse interceptRequest(ResourceRequest request)
  • 1.
  1. 根据参数url链接,返回ResourceResponse对象
public ResourceResponse interceptRequest(String url)
  • 1.
  1. 根据参数WebView对象和url链接,进行缓存处理
public void loadUrl(WebView webView, String url)
  • 1.
  1. 根据参数url链接和userAgent,进行缓存处理
public void loadUrl(String url, String userAgent)
  • 1.
  1. 根据参数url链接、additionalHttpHeaders和userAgent,进行缓存处理
public void loadUrl(String url, Map<String, String> additionalHttpHeaders, String userAgent)
  • 1.
  1. LinkPreview实现类
public void loadUrl(WebView webView, String url, Map<String, String> additionalHttpHeaders)
  • 1.
  1. 清除缓存
public void clearCache()
  • 1.
  1. 给缓存设置NORMAL或FORCE两种状态
public void enableForce(boolean force)
  • 1.
  1. 根据参数url链接返回缓存的输入流
public InputStream getCacheFile(String url)
  • 1.
  1. 初始化AssetsLoader
public void initAssetsData()
  • 1.
  1. 获取缓存路径
public File getCachePath()
  • 1.

相关资料

项目地址:https://gitee.com/openneusoft/CacheWebView
IDE官方下载地址:https://developer.harmonyos.com/cn/develop/deveco-studio

已于2021-7-27 15:29:49修改
2
收藏 2
回复
举报
2
1
2
1条回复
按时间正序
/
按时间倒序
XY道衍
XY道衍

gooood

回复
2021-7-27 17:19:56


回复
    相关推荐