仿微信,使用鸿蒙ArkUI + ArkTS(API9)开发实现

由于目前所有的手机最高只到API9,我还没有基于API10的开发板用于调试,所以,代码均使用API9实现,后面API10发布后再看要不要更新了

只是用于学习鸿蒙API,代码规范以及质量就不要在意了~

样式与逻辑上,尽可能的与微信一致,但介于鸿蒙在自定义程度的局限性上,以及个人水平问题,无法做到完全一致

相关技术说明

组件说明

  • 常用容器组件 Column、Row、Flex、Stack、RelativeContainer
  • 常用基础组件 Button、Text、Image、Toggle、Slider、TextArea、TextInput、Blank、Divider
  • 列表组件 List、Grid、AlphabetIndexer
  • 其他组件 Swiper、Tabs、ImageAnimator、Badge、Panel、QRCode
  • 绘制组件 Circle、Line、Path
  • 媒体组件 Video

自定义组件

  • PatternView

    这里不得不吐槽一下鸿蒙,原来是想直接用自带的手势密码,但自带的问题有点多,两个密码的连接线途径的密码,会强制选择,因而,无法实现 02/20/06/60/… 这样的的密码顺序

  • 微信语音输入组件

动画使用

  • 帧动画(ImageAnimator)
  • 属性动画(animation)
  • 显示动画(animationTo)
  • 转场动画(pageTransition)

功能说明

  • 微信主页面【微信】【通讯录】【发现】【我】
  • 聊天页面
    • 支持表情图文混排(API9只能自己实现,API10会有官方的实现方式)
    • 支持多种消息类型显示
    • 支持发送纯文字消息,语音消息,视频文件,图片文件
    • 支持播放语音、视频

​ 这里又要吐槽下,bindContextMenu 的强制边框,还有鸿蒙现在对输入法开/关以及监听支持很差,虽然提供有接口,但貌似都无效

  • 聊天设置页、联系人信息页、联系人信息编辑页
  • 我 -> 服务 -> 手势密码页
  • 我 -> 个人信息 -> 二维码名片页

开发计划

UI 相关的都玩一遍

不仅仅是界面展示,将相关可执行交互实现

数据来源:本地写死 > 本地数据库 > 在线假数据(不存在的Doge)

为了能让大家更好的学习鸿蒙(HarmonyOS NEXT)开发技术,这边特意整理了《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

《鸿蒙开发学习手册》:

如何快速入门:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. ……

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ……

基于ArkTS 开发:https://qr21.cn/FV7h05

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. ……

鸿蒙开发面试真题(含参考答案):https://qr18.cn/F781PH

鸿蒙开发面试大盘集篇(共计319页):https://qr18.cn/F781PH

1.项目开发必备面试题
2.性能优化方向
3.架构方向
4.鸿蒙开发系统底层方向
5.鸿蒙音视频开发方向
6.鸿蒙车载开发方向
7.鸿蒙南向开发方向

猜你喜欢

转载自blog.csdn.net/maniuT/article/details/136977536