KMP跨端工程接入

大约 4 分钟

KMP跨端工程接入

建议

如果您还没阅读过Kuikly接入概述,建议您先移步Kuikly概述. 了解下接入Kuikly涉及到的工作

为了减少业务开发者接入的成本,我们基于Android Studio开发了Kuikly脚手架插件, 你可以通过Kuikly脚手架插件轻松创建带有Kuikly的KMP工程。这个工程也是平时你写业务代码的工程

新建Kuikly工程

注意

在此之前请确保已经完成Kuikly环境搭建,如还未搭建环境,请移步环境搭建文档

  1. 使用Android Studio新建Kuikly工程。 File -> New -> New Project -> Kuikly Project Template
新建Kuikly工程
新建Kuikly工程

提示

按需创建额外的模块

新建后,工程结构如图所示

除了在shared中开发页面外,可以按需增加新的模块

运行androidApp

  1. 接着运行androidApp
运行AndroidApp
运行AndroidApp
  1. 当手机出现以下页面时,说明已经成功运行androidApp
运行成功

运行iosApp

  1. 如果是首次运行iOS的话,需要先进入iosApp目录,执行pod install --repo-update
  2. 将运行的scheme改为iosApp

  1. 运行iosApp
运行iosApp
运行iosApp
  1. 当手机出现下面界面时,说明已运行成功
运行成功

运行鸿蒙App

  1. 如果是首次运行Ohos的话,需要用鸿蒙DevEco-Studio打开ohosApp目录

    若初次打开鸿蒙IDEsync出错,打开ohosApp目录下的.npmrc文件,右上角点击sync重新sync即可

  2. 在运行App之前,需要执行签名操作 File -> Project Structure -> Signing Configs

  3. 运行ohosApp

    可以选择在 DevEco-Studio 内运行 或 Android Studio 内运行

    DevEco运行OhosApp
    DevEco运行OhosApp
    AndroidStudio运行OhosApp
    AndroidStudio运行OhosApp

    若 Android Studio 无ohosApp选项 重新打开Android Studio即可

  4. 当手机出现下面界面时,说明已运行成功ohosApp

    运行成功

运行H5

H5 是通过 gradle 启动 dev-server 来运行

  1. 编译demo代码成js
# 运行 demo 项目 dev server 服务器,没有安装 npm 包则先 npm install 安装一下依赖
npm run serve
#  构建 shared 项目 Debug 版
./gradlew :shared:packLocalJsBundleDebug
  1. 编译h5App代码成js,然后启动调试服务
#  运行 h5App 服务器 Debug 版
./gradlew :h5App:jsBrowserRun -t
kotlin 2.0 以上运行: ./gradlew :h5App:jsBrowserDevelopmentRun -t
如果window平台因为编译iOS模块失败,可以参考"快速开始-环境搭建"指引配置
# 拷贝 assets 资源到 dev server
./gradlew :h5App:copyAssetsToWebpackDevServer
  1. 浏览器查看效果 就可以在 http://localhost:8080/open in new window 看到效果了,如果要访问不同的页面,可以通过 url 参数指定页面名称,如:http://localhost:8080/?page_name=routeropen in new window

  2. 浏览器下面界面时,说明已运行成功h5App

运行成功

运行微信小程序

微信小程序先通过 gradle 编译js,然后通过微信开发者工具来运行

  1. 编译demo代码成js
# 运行 demo 项目 dev server 服务器,没有安装 npm 包则先 npm install 安装一下依赖
npm run serve
#  构建 demo 项目 Debug 版
./gradlew :shared:packLocalJsBundleDebug
  1. 编译miniApp代码成js,然后启动调试服务
#  运行 miniApp 服务器 Debug 版
./gradlew :miniApp:jsMiniAppDevelopmentWebpack

构建 release 版本

# 首先构建业务 Bundle
./gradlew :demo:packLocalJSBundleRelease

# 然后构建 miniApp
./gradlew :miniApp:jsMiniAppProductionWebpack

3.使用微信小程序开发者工具打开miniApp下的dist目录,根据你的实际页面,修改app.json里面的pages数组和在pages里新建对应的页面

  1. 微信开发者工具编译运行,出现下面界面时,说明已运行成功miniApp
    运行成功

下一步

在成功运行androidApp和iosApp后我们就已经完成Kuikly KMP工程的新建。下一步,我们还需要在各个平台接入Kuikly的渲染器和设置一些适配器的工作。 以下是各个平台Kuikly渲染器的接入文档:

  1. Android KuiklyRender接入
  2. iOS KuiklyRender接入
  3. 鸿蒙 KuiklyRender接入
  4. H5 KuiklyRender接入
  5. 微信小程序 KuiklyRender接入

可能会遇到的问题

:shared:podInstall错误

pod错误
pod错误

Android Studio本身的bug,可以查看StackOverflow的解决方案open in new window

Android Studio版本过低

as版本过低
as版本过低

Android Studio版本过低,可下载最新的Android Studio版本