diff --git "a/ohos/docs/04_development/\345\246\202\344\275\225\344\275\277\347\224\250\346\267\267\345\220\210\345\274\200\345\217\221 module.md" "b/ohos/docs/04_development/\345\246\202\344\275\225\344\275\277\347\224\250\346\267\267\345\220\210\345\274\200\345\217\221 module.md" index 5ba195e9193ed507978a009871211b191b48f2ae..16f244902bcab3df85c418470fd6b481be564e78 100644 --- "a/ohos/docs/04_development/\345\246\202\344\275\225\344\275\277\347\224\250\346\267\267\345\220\210\345\274\200\345\217\221 module.md" +++ "b/ohos/docs/04_development/\345\246\202\344\275\225\344\275\277\347\224\250\346\267\267\345\220\210\345\274\200\345\217\221 module.md" @@ -12,6 +12,20 @@ 使用 DevEco-Studio 创建OpenHarmony原生工程 MyApplication。 + +## 创建工程 +```sh +# 1. 创建 flutter子模块工程 +flutter create -t module my_flutter_module +``` + +## 将flutter_module集成进入已有工程 + +### 方式一:源码方式 +将flutter_module 中依赖的所有代码(dart代码和原生代码)以源码方式引入,能够做到在Deveco Studio即编即用 + + + ## flutter_module工程相关操作 ```sh @@ -61,65 +75,38 @@ cp -r my_flutter_module/.ohos/har/* MyApplication/har/ ### 方式二:ohos工程 直接引用 flutter_module 源码 -#### 1. 复制 flutter_module 源码 和 flutter相关文件 +#### 1. copy hvigorconfig.ts -```sh -cp -r my_flutter_module/.ohos/flutter_module MyApplication/ -mkdir -p MyApplication/flutter_module/src/main/resources/rawfile -cp -r my_flutter_module/.ohos/flutter_module/src/main/resources/rawfile/flutter_assets MyApplication/flutter_module/src/main/resources/rawfile -cp my_flutter_module/.ohos/har/flutter.har MyApplication/har/flutter.har -``` +//该文件由于动态增加plugin为module的依赖,如果你的工程中没有,可以直接copy +cp my_flutter_module/.ohos/hvigorconfig.ts MyApplication/hvigorconfig.ts +//如果你的工程有,需要将内容copy进入你的工程中的hvigorconfig.ts -#### 2. 修改 MyApplication/build-profile.json5 +#### 2. 将flutter_module 加入你的工程中的build-profile.josn5 -```json -{ - // ... - "modules": [ - { - "name": "entry", - "srcPath": "./entry", - "targets": [ - { - "name": "default", - "applyToProducts": [ - "default" - ] - } - ] - }, - // 以下为新增内容 - { + { "name": "flutter_module", - "srcPath": "./flutter_module", - "targets": [ - { - "name": "default", - "applyToProducts": [ - "default" - ] - } - ] - } - ] -} -``` + "srcPath": "my_flutter_module/.ohos/flutter_module", + }, + +#### 3.修改依赖,根据你的依赖需求,修改, -#### 3. 修改 MyApplication/oh-package.json5 +#### 4. 使用 Deveco Studio 配置 MyApplication 的签名 + +#### 5. 运行 MyApplication + + +### 在你的工程中实施修改plugin的原生代码 + +#### 1.在flutter_module代码中pubspec.yaml依赖依赖你的plugin -```json -{ - // ... - "dependencies": { - "flutter_module": "./flutter_module", - "@ohos/flutter_ohos": "./har/flutter.har" - }, - "overrides": { - "@ohos/flutter_ohos": "./har/flutter.har" - } -} ``` +dependencies: + flutter: + sdk: flutter + plugin: + path: ../plugin -#### 4. 使用 Deveco Studio 配置 MyApplication 的签名 +``` + +#### 2. 在Deveco Studio 工程 同步文件后找到你的plugin直接修改原生代码 -#### 5. 运行 MyApplication