当前位置: 首页 > news >正文

flutter 开发 鸿蒙 App

最近 鸿蒙应用市场在做推广,力度还可以。本来 flutter 可以跨平台跑的。flutter本身也有维护 支持鸿蒙 平台的 特定版本。所以今天我们就来尝试下 使用 flutter 来开发一个 鸿蒙平台的App,来上架。包含环境的搭建 修改 上架;

1.开发环境的配置

1.1  flutter  sdk  版本介绍

首先呢就是 下载 支持 鸿蒙 环境的  特定 flutter 版本,这里使用 3.22.1-ohos-1.0.4

  • flutter 3.7.12 分支 这个是 之前维护的分支
  • flutter 3.22.1 分支 这个是 目前最新的 

 

我们通常使用 fvm 来进行 flutter 不同版本的管理。这样的好处是我们可以针对不用项目使用不用的 Flutter SDK版本 fvm 的使用我这里也有介绍

 

1.2 flutter ohos  sdk 下载 
  1.  找到 fvm  存放  flutter sdk 的位置 ,一般使用 fvm list 就能看见
    D:\Project_HarmonyOS\apps\makeqrcode>fvm list
    Cache directory:  C:\Users\Administrator\fvm\versions
    Directory Size: 12.23 GB
  2. 进入 fvm 缓存路径 下载版本,特定特定SDK版本

    git clone https://gitcode.com/openharmony-tpc/flutter_flutter.git#等待下载完成修改 文件名称为:3.22.1-ohos-1.0.4

  3. 下载 鸿蒙 开发的 IDE,配置环境;这个上面有详细的 环境配置 教程https://gitcode.com/openharmony-tpc/flutter_flutter/tree/br_3.22.0-ohos-1.0.4

2.华为开发者平台申请证书文件

华为的这个证书管理和 苹果有点像:但是用起来没有 苹果的方便。

2.1 首先使用 DevEco Studio 生成  .p12 和 .csr 文件

 

2.2 在华为开发者平台  新建 证书。我这里新建了 dev(开发)prod(线上)

 

2.3 为你的应用 新建 App ID

 

2.4 为你应用 新建 profile 文件:区分 开发生产环境,新建完成 下载 证书

 

  • 证书不同环境 针对 不同的发开环境。比如 生产的证书 你是不能 开发调试的。应用商店 你是提交不了你 开发环境的证书,
  • 后面你添加应用 只需要添加AppID 对应证书就行。其余四个不用新建

3.项目创建

3.1 fvm 创建项目

在这里我们的 前期工作准备完毕了。现在就开始 创建 ohos 应用了 (文件夹不要有中文 空格)

  1. 创建一个根路径文件夹作为 flutter 项目 路径。
  2. 使用 fvm use 3.22.1-ohos-1.0.4 ,在本路径中 使用 fvm flutter 命令开头都是 指定的版本
  3. 使用 fvm 创建 flutter 项目指定,包名 项目名称:(这一步很关键。后面创建好的 鸿蒙工程 改包名很麻烦) 
    #指定使用 flutter 版本
    fvm use 3.22.1-ohos-1.0.4#创建 flutter 项目,记得一定要使用 fvm 前缀
    # 指定包名 为 com.king.okjj   要不然二次改包名  很麻烦
    fvm flutter create  --org com.king --template=app --platforms=ohos okjj#进入 okjj 文件夹 使用编辑器打开
 
  3.2  项目运行
  •   我这里使用的是 DevEco Studio 鸿蒙模拟器 的方式运行的项目
  •  fvm flutter run  运行项目
  •  对一次会下载一些依赖,并且报错 。应为我们没有配置签名
  • 使用 DevEco Studio 打开 flutter工程中 ohos 文件夹(就是鸿蒙工程),配置签名

 

  • 配置完成之后我们重新 fvm flutter run ,j

 

3.3 修改图标 和 app 应用名称
  • app 名称
  • app 图标
  •  对应的配置文件

4.打包上架

上架打包 首先需要 把你的证书换成 生产环境的,然

# 这个和 传统 flutter 一样,后面也能加混淆
# fvm flutter build app --release --obfuscate --split-debug-info=/obfuscate/app
fvm flutter build app --release

 

直接在 华为应用市场 上传就行了。

问题:

  1. 关于 华为鸿蒙 支持那些 插件。纯 dart 开发的都支持。但是呢这里遇到一个有意思的事情。我这边想用
    qr_flutter: ^4.1.0 插件,死活 引入不了。后来用 Android studio 打开发现可以引入 而且正常使用。打包也没问题
  2. 鸿蒙插件适配表:这里可以查看
     
http://www.lryc.cn/news/621123.html

相关文章:

  • 解决因取消VMware快照删除导致的虚拟机磁盘损坏问题
  • shellgpt
  • AI大模型+Meta分析:助力发表高水平SCI论文
  • 部署文件到受管主机
  • 远程影音访问:通过 cpolar 内网穿透服务使用 LibreTV
  • 高效TypeScript开发:VSCode终极配置指南
  • 莫队 + 离散化 Ann and Books
  • 浏览器面试题及详细答案 88道(34-44)
  • 宝塔配置反向代理
  • 机器学习基础讲解
  • Linux:Samba 服务部署
  • 机器学习学习总结
  • 基于机器学习的文本情感极性分析系统设计与实现
  • 【深度学习】深度学习的四个核心步骤:从房价预测看机器学习本质
  • 机器学习--KNN算法
  • 减重小知识
  • AI幻觉终结之后:GPT-5开启的“可靠性”新赛道与开发者生存指南
  • 系统思考:转型困扰与突破
  • [ HTML 前端 ] 语法介绍和HBuilderX安装
  • 语义 HTML 的核心价值:提升 SEO 与 AI 理解
  • 解剖HashMap的put <五> JDK1.8
  • scikit-learn/sklearn学习|广义线性回归 Logistic regression的三种成本函数
  • Android POS应用在android运行常见问题及解决方案
  • 【数据结构初阶】--排序(一):直接插入排序,希尔排序
  • 前端框架选择之争:jQuery与Vue在现代Web开发中的真实地位-优雅草卓伊凡
  • 机器学习核心概念与实践笔记
  • spring mvc HttpMessageConverter 消息转换器
  • 【互动屏幕】解析双屏联动在数字展厅中的应用与价值
  • 系统升级后客户端缓存问题的无感知解决方案
  • [激光原理与应用-273]:理论 - 波动光学 - 光是电磁波,本身并没有颜色,可见光的颜色不过是人的主观感受