webPlayGround功能

该功能开启,可以使应用开发者将OpenHarmony-TPC提供的web组件 作为应用实际使用的web组件,起到替换系统默认web组件的效果。

如何使用webPlayGround功能

功能开启有三个条件

1、设备开启开发者模式
2、应用签名证书为debug类型,要求应用包信息中appProvisionType:debug
3、应用配置文件中添加配置,添加对应的应用环境变量
//Appcope/app.json5
"appEnvironments": [ { "name":"enableArkWebPlayGround", "value":"true" } ]

替换资源

这一步需要编译web组件,并将编译结果按要求放置到应用工程对应目录参与应用编译打包。
web组件编译命令可以参考:chromium_src
编译对应设备类型的web组件,参考


64位设备
./build.sh -t w -A rk3568_64 -j 10


32位设备
./build.sh -t w -A rk3568 -j 10


编译结果为ohos_nweb.hap,修改hap文件后缀名为zip,解压编译结果

├── ohos_nweb.hap
├── ohos_nweb.zip
├zip解压结果
├── ets
│   └── modules.abc
├── libs
│   └── armeabi-v7a
│   ├── libarkweb_crashpad_handler.so
│   ├── libarkweb_engine.so
│   ├── libarkweb_render.so
│   └── libffmpeg.so
├── module.json
├── pack.info
├── resources
│   ├── base
│   │   ├── media
│   │   │   └── app_icon.png
│   │   └── profile
│   │   └── main_pages.json
│   └── rawfile
│   ├── icudtl.dat
│   ├── locales
│   │   ├── bo-CN.pak
│   │   ├── en-US.pak
│   │   ├── ug.pak
│   │   ├── zh-CN.pak
│   │   ├── zh-HK.pak
│   │   └── zh-TW.pak
│   ├── resources.pak
│   └── snapshot_blob.bin
└── resources.index

打包动态库文件

将上述解压结果中libs目录放到应用目录下$app/entry下,修改设备架构
例如:
将armeabi-v7a改为arm64-v8a

打包其余文件

将ohos_nweb.hap 文件重命名为nweb.hap,放到$app/entry/src/main/resources/resfile路径,须新建resfile目录

重新编译应用,安装即可

日志

功能使能成功日志:webPlayGround opened

功能使能失败日志:webPlayGround not opened for isDebugApp ...