参加 GitCode 组织的【开源鸿蒙跨平台开发训练营】第二天,今天时间不多,偷个懒😄,明天加班卷✌️。 目标:创建GitCode 口袋跨平台项目,项目在Android、iOS、鸿蒙三个平台成功运行。

环境搭建请参考:【开源鸿蒙跨平台开发学习笔记 】DAY01:在 Mac 上搭建 flutter 跨平台开发环境

一、创建项目

1、创建包名为com.dannie.pocket  项目名为pocket 的 android、iOS、ohos项目,命令如下

flutter create --org com.dannie.pocket --platforms android,ios,ohos pocket

2、项目结构如下:

二、鸿蒙项目结构如下:

1、鸿蒙项目真机运行必须签名,请参考官方文档 配置调试签名

  • AppScope > app.json5:应用的全局配置信息。
  • entry:应用/元服务模块,编译构建生成一个HAP。
    • src > main > ets:用于存放ArkTS源码。
    • src > main > ets > entryability:应用/元服务的入口。
    • src > main > ets > pages:应用/元服务包含的页面。
    • src > main > resources:用于存放应用/元服务模块所用到的资源文件,如图形、多媒体、字符串、布局文件等。
      src > main > module.json5:Stage模型模块配置文件,主要包含HAP的配置信息、应用在具体设备上的配置信息以及应用的全局配置信息
    • build-profile.json5:当前的模块信息、编译信息配置项,包括buildOption、targets配置等。
    • hvigorfile.ts:模块级编译构建任务脚本。
    • oh-package.json5:描述三方包的包名、版本、入口文件(类型声明文件)和依赖项等信息。
  • oh_modules:用于存放三方库依赖信息,包含应用/元服务所依赖的第三方库文件。
  • build-profile.json5:应用级配置信息,包括签名、产品配置等。
  • hvigorfile.ts:应用级编译构建任务脚本。
  • oh-package.json5:描述全局配置,如:依赖覆盖(overrides)、依赖关系重写(overrideDependencyMap)和参数化配置(parameterFile)等。

2、运行效果图如下:

三、Android项目

虽然本小鱼是Android开发,但是还是在这里踩了一个大坑,又花了几个小时😭

小鱼安装了两个版本的Android,信息如下:

1、先介绍一下使用4.2.2 Android studio ,昨天踩坑到凌晨,中间解决过程没来得及记录,最终是解决并运行成功的,如果有人遇到该问题,给我留言,我帮忙一起解决哦。

  • 打开工程如下

  • 工程同步就出现错误啦

  • 按照提示安装: NDK 27.0.12077973

安装成功后运行提示SDK版本需要17

下载JDK 17

选择Download JDK

选择版本17:

JDK下载后提示ndk版本要下载 26.3.11579264,忙着解决问题忘记截图,但是本小鱼听劝,继续下载~

再次期间本小鱼还给自己挖了个坑:
compileOptions {
        sourceCompatibility = JavaVersion.VERSION_17
        targetCompatibility = JavaVersion.VERSION_17
    }

    kotlinOptions {
        jvmTarget = JavaVersion.VERSION_17.toString()
    }
在修改JDK版本的时候kotlinOptions忘记改了~ 

最后一次提示出错是需要安装 CMake 3.22.1,必须听劝安装~

最后成功运行:

不错,是凌晨的12:42才成功,第一次佩服自己的耐心~ 🎉

2、使用 2025.1.2 Patch 2这个版本的Android studio

没什么难度,打开项目,同步完,就可以直接运行,小鱼哭的心都有!!!

四、iOS项目

直接在AppStore 下载XCode就像,打开项目,运行

项目结构如下:

至此,项目在鸿蒙、Android、iOS上都成功运行,最后给自己一个66 ✌️

总结:

新创建的项目,要使用新版本的IDE,不要没苦硬吃!!!

Logo

作为“人工智能6S店”的官方数字引擎,为AI开发者与企业提供一个覆盖软硬件全栈、一站式门户。

更多推荐