鸿蒙Web混合开发精要

212 阅读1分钟

1. Cookie管理

Cookie是网络访问过程中,由服务端发送给客户端的一小段数据。客户端可持有该数据,并在后续访问该服务端时,方便服务端快速对客户端身份、状态等进行识别。

Web组件提供了WebCookieManager类,用于管理Web组件的Cookie信息。Cookie信息保存在应用沙箱路径下/proc/{pid}/root/data/storage/el2/base/cache/web/Cookiesd的文件中。

try { 
   // 设置为true时同时清除rom和ram中的缓存,设置为false时只清除ram中的缓存     
   this.controller.removeCache(true); 
} catch (error) { 
   let e: business_error.BusinessError = error as 
   business_error.BusinessError;console.error(`ErrorCode: ${e.code}, Message: ${e.message}`); 
}

2.网页缩放

Web().zoomAccess(true);
this.controler.zoom(this.factor);
  • 需要注意的是只有网页自身支持缩放,才能在Web组件里面进行缩放。

文本缩放

Web().textZoomAtio(150)//将文本放大为原来的1.5倍,但是图片不会一起放大

3.H5、js调用原生Web组件

使用registerJavaScriptProxy方法生效,须调用refresh方法。

this.controller.registerJavaScriptProxy({
      object: this.testObj,
      name: 'objName',
      methodList: ['test', 'toString'],
});
this.controller.refresh();
  • 还可以使用deleteJavaScriptRegister删除通过registerJavaScriptProxy注册到window上的指定name的应用侧JavaScript对象