前言本项目API>=13关于鸿蒙项目的组件化运行,已经分享了两种方式了,分别是IDE插件方式和node脚本方式,今天给大家带来第三种方式,Hvigor插件方式;和前两种方式不同的是,它的使用更加简单,不需要我们手动的去切换就能实现组件运行 hvigor插件依赖目前插件已经发布npm平台,版本号为1.1.8,大家可以按照如下方式进行依赖插件,在hvigor目录下的hvigor-config.json5中,找到dependencies,在里面追加 ,我们的插件就依赖完成了。 hvigor插件使用hvigor插件使用和前两种方式完全不一样,它自动会识别你目前要运行的模块,不用单独的再次切换,比如你要运行某个模块,直接在顶部选择之后,直接运行即可。 相关总结目前第一次运行的时候,会在根项目下生成一个harmonyComponent.json5文件,这个文件的主要目的,用于控制插件是否执行,默认为true,每次运行都会执行插件,false不执行插件内容
前言本文API>=13,基于DevEco Studio 5.1.0 Release,版本号5.1.0.828之前在《hvigor插件实现组件化运行》一文中,我们生成了一个文件,主要用于模块运行包和共享包之间切换的控制 当然了,还有很多的应用场景,比如,在构建前,针对代码规范进行检查,如果有不符合规范的地方,输出到一个错误文件中,或者,需要针对项目中的代码进行动态修改等等场景,hvigor插件开发中如何去实现呢? 这就是这篇文章要概述的内容,hvigor插件中的文件操作。 使用FileUtil之前,我们先导入模块,如下代码所示:import { FileUtil } from '@ohos/hvigor';主要方法概述1、判断文件路径是否存在使用exist方法来判断一个文件地址是否存在 console.log("It is a directory"); } else { console.log("It is not a directory"); }3、
能力说明hvigor-ohos-plugin插件支持在hvigorfile.ts里插入使用者的自定义构建任务,并且在运行时获取到自定义的一些编译参数,以及实现修改产物属性的功能。 3. 执行项目根目录下的hvigorconfig.ts文件,可以在此文件中通过hvigor的相关API来为生命周期注册hook或在构建开始时进行其他处理。4. 3. 任务可以并行执行。 /hvigorw --sync -p key=hello,控制台打印:hello三、 修改打包产物属性hvigor-ohos-plugin插件支持在hvigorfile.ts里接收部分编译配置,以实现动态配置构建配置 内置插件,不可修改 plugins: [customPluginFunction1(), customPluginFunction2(),customPluginFunction3()]
前言本文API>=13,基于DevEco Studio 5.1.0 Release,版本号5.1.0.828上篇文章,我们针对鸿蒙开发中的模块,实现了单一模块运行,使用的是hvigor插件的形式,通过hvigor 插件,我们可以看到,它自动化执行了某些特定的任务,减少了我们的手动干预,确保了构建过程的一致可靠性,可以说,在实际的开发中,极大的提高了我们的开发效率,今天,我们这篇文章,就一起实现一个hvigor插件 目前有两种方式实现hvigor插件,一种是基于hvigorfile脚本,另一种是基于基于typescript项目;两者有着一定的区别,hvigorfile脚本形式,直接写到项目中即可,便于我们针对脚本的更改 第一步:导入接口import { HvigorPlugin, HvigorNode } from '@ohos/hvigor';第二步:实现自定义插件function myPlugin(): HvigorPlugin '); } }}第三步:使用插件export default { system: appTasks, /* Built-in plugin of Hvigor.
前言本文API>=13,基于DevEco Studio 5.1.0 Release,版本号5.1.0.828上篇文章,我们介绍了两种方式,实现了一个hvigor插件的开发,但是只概述了基本的开发流程,并未涉及到具体的代码开发 ,接下来的几篇文章,我们会重点去了解一下,hvigor插件中的那些API用法,以便于实际的插件开发。 首先是HvigorNode,它是hvigor中的节点模型接口,通过它,我们可以获取到模块的配置,属性和任务等。还记得上篇文章中,我们的插件开发是在哪里编写代码的吗? 3、获取项目下所有的子节点项目下的子节点获取可以通过subNodes()方法来获取,此方法获取的是独立的模块信息,其他的文件不会返回。 ,极大的提高了我们编写插件的效率。
为解决这些问题,本次更新引入了 Hvigor 插件,实现动态配置更新,并支持直接依赖插件源码进行构建,显著提升开发体验。 3. **添加 Hvigor 插件** 在 ohos/hvigorfile.ts 中添加 Hvigor 插件 flutterHvigorPlugin,代码如下: import path from 'path **更新 hvigorfile.ts 文件** 将插件项目下的 hvigorfile.ts 改为: import { harTasks } from '@ohos/hvigor-ohos-plugin 总结 本次鸿蒙版 Flutter 优化 ohos 构建过程,通过引入 Hvigor 插件实现了动态配置更新,有效避免了配置文件频繁修改引发的提交冲突。
下载完成后,从本地安装IDE插件 确保插件版本与IDE版本兼容 插件安装界面 重启IDE 安装成功后需要重启IDE以确保插件生效 重启后可以在新建项目时看到仓颉相关模板 创建仓颉项目 步骤一:新建项目 com.nutpi.cangjiedemp 08:19:51.207: $ hdc shell mkdir data/local/tmp/e4f5714c783d4fb99b4ab804bca7d8a3 in 344 ms 08:19:51.705: $ hdc shell bm install -p data/local/tmp/e4f5714c783d4fb99b4ab804bca7d8a3 in :用于存放当前工程使用的hvigor cangjie-build-support-x.y.z-cj.x.tgz:仓颉指定的hvigor任务包 hvigor-config.json5:指定工程全局使用的hvigor 资源管理 资源文件应放在对应的资源目录下 遵循鸿蒙资源命名规范 注意不同设备的资源适配 3.
@satis/oh-router简介@satis/oh-router 与 hvigor插件 @satis-sun/modularity-plugin 配合使用,无需手动配置系统路由表,使用注解的方式即可完成系统路由表的配置 下载安装ohpm install @satis/oh-router推荐使用 @satis-sun/modularity-plugin 插件,该插件会自动配置模块依赖 @satis/oh-router、@ satis/common_router无需手动安装配置 工程目录下的 hvigor/hvigor-config.json5{ "modelVersion": "5.0.0", "dependencies modularity-plugin": "^1.0.4" }, ... }配置工程目录下 hvigorfile.tsimport { appTasks } from '@ohos/hvigor-ohos-plugin string路由拦截提示语言3.
hvigor 5.5.1 编译构建工具DevEco Hvigor(以下简称Hvigor),适用于API 10及以上的工程。 ohpm 5.0.6 OpenHarmony三方库的包管理工具。 hvigorw 5.5.1 编译构建工具DevEco Hvigor(以下简称Hvigor),适用于API 10及以上的工程。 ohpm 5.0.6 OpenHarmony三方库的包管理工具。 hvigor-config.json5中properties下新增hvigor.keepDependency字段,用于指定是否保持hsp模块的所有依赖。。 本地单元测试新增支持mock能力。 变更特性 DevEco Studio下架Intelligent Coding Assistant插件。 在进行native调试时,开发者可以同时设置数据断点的最大数量由4个变为2个。
找不到”报错 首次用 DevEco Studio 打开项目时,极易出现以下报错: Cannot find module 'flutter-hvigor-plugin' 这是因鸿蒙 Flutter 适配插件未自动安装导致 /flutter/bin/flutter pub get),避免调用系统默认的普通 Flutter SDK; 命令执行成功后,将自动完成 flutter-hvigor-plugin 插件安装、Dart 依赖下载、鸿蒙与 Flutter 桥接文件生成,ohos/hvigorconfig.ts 可正常识别插件。 启动项目 在 DevEco Studio 右下角选择目标设备(模拟器/真机); 点击顶部绿色“Run”按钮(或快捷键 Shift+F10),开始构建项目; 首次构建耗时约 3-5 分钟(依赖网络速度), 八、高频问题解决方案汇总 遇到的问题 具体解决方案 Cannot find module 'flutter-hvigor-plugin' 进入项目根目录,执行 flutter pub get 安装插件
六、插件的官方文档翻译 将下载的unitypackage导入工程,导入后会看到几个demo和插件的说明文档AVProVideo-UserManual 详细的插件用法包括视频格式的支持和API在说明文档中都有 app.cs: m_AppCallbacks.AddCommandLienArg(“-force-d3d11-no-snglethreaded”); 3.2 试用版和水印说明 3.2.1 水印 如果你使用的是这个插件的试用版 3.2.3 安装多个AVPro平台包 如果你已经安装了iOS包,那么它也会包含所有其他的插件。平台,但启用了水印。这意味着,如果您试图安装另一个AVPro包,它可能不会正确地覆盖插件。 下面是如何使用iOS和Android包来解决这个问题: 1.开始一个Unity新项目 2.导入iOS的包 3.删除Plugins/Android 文件夹 a.如果你已经安装了其他的Android插件 3.还有3个不同的流媒体url来演示流媒体。 4.IMGUI是在所有其他可视组件之上绘制的。
Sublime Text 3 就 Sublime Text 3 来说主要的扩展包如下 All Autocomplete 自动补全,默认 Sublime Text 只会补全本文件的内容,此扩展会补全所有的
自定义组件增加路由定义@AppRouter({ uri: "app://login" })@Componentexport struct LoginView { build(){ //... }}3. 实现路由表生成插件新建插件目录etsPlugin,建议创建在HarmonyOS工程目录之外mkdir etsPlugincd etsPlugin创建npm项目npm init安装依赖npm i --save-dev @types/node @ohos/hvigor @ohos/hvigor-ohos-pluginnpm i typescript handlebars初始化typescript配置. 在应用中使用修改项目的hvigor/hvigor-config.json文件,导入路由表插件{ "hvigorVersion": "4.2.0", "dependencies": { "@ohos ),加载插件import { harTasks } from '@ohos/hvigor-ohos-plugin';import {PluginConfig,etsGeneratorPlugin} from
解决 Flutter for OpenHarmony 构建失败:HVigor ERROR 00303168 (SDK component missing) 在使用 Flutter 开发 OpenHarmony SDK 路径未识别:Flutter for OpenHarmony 依赖特定的 OpenHarmony SDK(Hvigor/ArkUI),构建工具无法在当前环境中找到这些必要的组件。 第一步: 1.打开设置搜索控制面板进入程序 2.进入程序和功能 3.打开这个 4.把这两个勾选点确定就行了 二.登陆Devapp 1.进行虚拟机的安装 2.修改路径 3.进行安装虚拟机 4.按照图上的操作 5.点击确认下载镜像 6.自定义即可 7.打开项目文件运行虚拟机 8.成功页面 ✅ 四、 总结 遇到 HVigor ERROR 构建工具(Hvigor)迷路了,你需要通过 local.properties 或环境变量明确告诉它 OpenHarmony SDK 在哪里。
url=c9YyfvWOfn0EtUrhKlZQ26ANUOD_CSqjgqqsb3lq6LQ05oy2MQs4hWEYLVTlFgHhZKLmtMPTq1xsk6MyyKQKGYoxVE8pudSPKorJacGzTJy &eqid=ed8e37ab0006abb800000002593bf5c2 http://www.cnblogs.com/EnSnail/p/6294897.html 2、官方下载sumblime 3及安装 Package Control,下载emmet插件 http://www.sublimetext.com/3 http://www.cnblogs.com/tinyphp/p/3217457.html Ctrl+Alt+A和QQ截屏冲突,可设置其他快捷键如:Ctrl+Shift+Alt+A;先选择要对齐的文本 5、SublimeCodeIntel SublimeCodeIntel 作为一个代码提示和补全插件 可以通过安装插件GBK Support,来识别GBK和ANSI。
改版的原因: 图片 相当蛋疼 下面是 基于现有插件 需要做的一些改变的清单 1.background 替换成service worker: 需要注意的是:不使用时终止,需要时重新启动(类似于事件页面 (service worker独立于页面,无法使用window对象) 2.v3 废弃了一些方法: chrome.extension.sendRequest() chrome.extension.onRequest message requesting the user's data chrome.runtime.sendMessage('get-user-data', (response) => { // 3. 比较蛋疼的v3的严格模式 禁止了之前的vue实例化写法: 具体的vue实例化写法可以参考之前的一篇文章:h5引用vue 先看看报错: 图片 unsafe-eval: ‘unsafe-inline’和 content_security_policy": { "extension_pages": "script-src 'self' 'unsafe-eval'; object-src 'self'", } 添加unsafe-eval标实,但是插件会给我们抛错
插件形式进行组件化,奈何时间过去已久,之前的方式已不在通用,因为新的API更新迭代太快了,不知不觉API19已经到来,今年以来,已经更新了6个版本了,官方的速度如火箭一般,实现追不上啊! 因为Api发生了变化,新的IDE中,创建的项目结构,也潜移默化的发生了变化,那么之前开发的插件也好,脚本也好,也是无法继续使用的,没办法,只能改造升级了。 system: hapTasks, /* Built-in plugin of Hvigor. , /* Built-in plugin of Hvigor. 3、缺少ability其实在module.json5中我们已经看出了这个差异,主模块中是多了两个Ability,一个是EntryAbility,一个是EntryBackupAbility,虽然说默认生成的自带
app.json5│ └── resources│ ├── base│ └── rawfile├── build-profile.json5├── dependencies│ ├── hvigor -4.1.1.tgz│ ├── hvigor-ohos-arkui-x-plugin-3.1.0.tgz│ └── hvigor-ohos-plugin-4.1.1.tgz├── entry│ 1.0.4.har│ ├── flutter.har│ ├── flutter_boost.har│ ├── flutter_module.har│ └── lib_base.har├── hvigor │ └── hvigor-config.json5├── hvigorfile.ts├── local.properties├── oh-package.json5├── package-lock.json └── package.json参考资料撰写双端平台代码(插件编写实现)鸿蒙Flutter功能开发鸿蒙add-to-app示例如何使用混合开发 module
3.HMRouter是什么形态?作为插件集成到项目中进行使用,目前代码开源在Gitee上,也可以直接拿源码模块使用,或者自己魔改(不过要注意在商业项目中使用,开源协议的问题)。 三、快速使用(1)集成HMRouter插件1.首先需要下载依赖"dependencies": { "@hadss/hmrouter": "^1.0.0-rc.5" }2.编译插件配置"dependencies ": { "@hadss/hmrouter-plugin": "^1.0.0-rc.4" // 使用npm仓版本号},import { hapTasks } from '@ohos/hvigor-ohos-plugin hapPlugin } from "@hadss/hmrouter-plugin";export default { system: hapTasks, /* Built-in plugin of Hvigor 0x0000, 'testTag', '%{public}s', 'Ability onCreate'); HMRouterMgr.init({ context: this.context });}(3)
GEOlayers 3是一款AE地图绘制插件,适用于ae的世界地图任意位置路径展示动画插件,可以直接在AE中绘制各种效果的地图,包括地图国家,街道等,默认包含14种地图样式。 AE插件GEOLayers3 mac版AE插件GEOLayers3 win版AE插件GEOLayers3插件介绍GEOlayers 3使您可以直接在After Effects中设计和设置地图动画。 插件特点在3D空间中制作动画直观的控件可为3D空间中的地图制作动画您可以在After Effects中滚动,缩放,倾斜和旋转地图,创建关键帧并为其设置动画。GEOlayers 3渲染动画的所有图像。 GEOlayers 3允许您轻松导入.csv或.tsv文件格式的数据集。数据驱动的样式帮助您仅需单击几下即可快速可视化After Effects合成中的数据集。 3D风景一键创建3D景观如果您安装了Trapcode Mir 3,Mettle FreeFormPro或Rowbyte Plexus 3,则可以一键创建精美的3D景观设置。