鸿蒙Harmony应用开发,一起来写一个“遥遥领先”的开眼App

这篇具有很好参考价值的文章主要介绍了鸿蒙Harmony应用开发,一起来写一个“遥遥领先”的开眼App。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

最近不知道怎么鸿蒙Harmony突然就很火,到处都是鸿蒙开发相关的文章,培训机构的也是各种推鸿蒙应用,不知道是真的🔥了,还是在贩卖焦虑!不过看热度不错,那也就来了解了解咱们的遥遥领先😊,花了大概一周的闲暇时间从了解到参照自己以前开眼App的api写了一款鸿蒙版本的开眼App!!!
先把项目的地址贴上去:WinWang/HarmoneyOpenEye: 华为鸿蒙Harmony开眼App(项目整体基于Api9+ArkTs+ArkUI) (github.com)

开发准备

1、开发工具

这一块推荐大家直接看官方社区文档,跟着文档走,下载开发工具DevEco-Studio并按照提示配置好对应的环境,初次体验可以尝试官方给的Sample创建一个demo工程体验下项目的配置和页面UI等

2、安装设备

遥遥领先是买不起了,大家直接类似Android开发一样创建对应的模拟器就好了;我用同事的真机安装测试发现Mate 30系列其实安装起来体验很糟糕,看官方论坛说是针对麒麟990和以前的cpu兼容性还没处理好,具体表现是点击界面线程阻塞无响应。

3、开发鸿蒙相关网站

以下网站是我在开发中使用较多的网站
1、UI使用参考
开发说明-容器组件-组件参考(基于ArkTS的声明式开发范式)-ArkTS API参考-HarmonyOS应用开发
2、相关开源库查询使用参考
DevEco Marketplace (harmonyos.com)
3、相关问题查询-官方论坛
文档中心 | 华为开发者联盟 (huawei.com)

项目功能简介

项目开发细节就不做过多的介绍了,项目整体基于Api9+Stage模式+ArkTs+ArkUI,主要列举下项目相关功能
1、常用组件的抽取;
2、网络请求的基础封装(基于axios和http分别写了一份)
3、封装项目页面多状态(加载中,成功,失败,空数据)
4、视频播放以及视频列表播放功能
5、列表页面刷新加载、滚动监听示例等
需要注意一点的是项目里面因为引用了axios框架,需要用ohpm(类似npm吧😭)安装axios,如果不能运行配置下环境变量即可 ohpm install @ohos/axios

项目贴图

开眼api,harmonyos,鸿蒙,华为开眼api,harmonyos,鸿蒙,华为

开眼api,harmonyos,鸿蒙,华为开眼api,harmonyos,鸿蒙,华为

开眼api,harmonyos,鸿蒙,华为开眼api,harmonyos,鸿蒙,华为

开眼api,harmonyos,鸿蒙,华为开眼api,harmonyos,鸿蒙,华为

开眼api,harmonyos,鸿蒙,华为开眼api,harmonyos,鸿蒙,华为

开眼api,harmonyos,鸿蒙,华为开眼api,harmonyos,鸿蒙,华为

开眼api,harmonyos,鸿蒙,华为开眼api,harmonyos,鸿蒙,华为

开眼api,harmonyos,鸿蒙,华为

总结

针对鸿蒙开发,相对来说如果有过Flutter或者Android Compose开发经验,使用ArkUI开发UI会无差别上手开撸;ArkTs对前端大佬来说又很熟悉和友好,不过总的来说都还行,新推出的UI都往声明式UI方向走,开发语言当作ts来对待就好,我的理解是多了些装饰器等等,当然在开发的时候也遇到一些槽点吧,我罗列大致如下:
1、自定义组件里面放BuilderParams的时候,如果超过两个不能使用闭包,这针对需要外部传参两个BuilderParams的情况写法就不太友好
2、自定义组件里面Link和Props不能设置默认值,使用这个组件外部必须使用State声明同步传递参数
3、@Extend和@Style这种抽取样式居然不能在组件外抽取公共的样式,只能在创建组件的Component里面创建,这样就没有办法设置公共的按钮、文字这些的样式了
4、沉浸式状态栏看了官方的Api和社区,我目前没找到很好的解决办法
5、最大的可能就是真机运行的支持了
可能我说的这些问题也有好的解决方法,希望知道的大佬不吝赐教!!!


##### 最后也把自己一些其他项目学习的链接贴下,只能说现在都在往大前端方向走了,真的卷不动了

Flutter版本开眼App链接(getx+retrofit+dio+jsonserialize+自定义控件demo):github.com/WinWang/ope…

Flutter版本的音乐播放App链接(getx+retrofit+dio):github.com/WinWang/mus…

ReactNative版本的开眼App链接(ReactNative-0.72):github.com/WinWang/RNO…

React版本的开眼App链接(React18+React-Vant+Mobx+axios):github.com/WinWang/rea…

Vue2版本WanAndroid链接(Vue2+vuex+vant+axios):github.com/WinWang/Vue…

Vue3版本WanAndroid链接(vue3+typeScript+pinia+vant+vite):github.com/WinWang/Vue…

Android组件化项目ReadingGallery链接(jetpack+kotlin+koin+couroutine):github.com/WinWang/Rea…

Android组件化项目初始化工具ApplicationInit链接(gradle-plugin+注解APT+ASM):github.com/WinWang/App…文章来源地址https://www.toymoban.com/news/detail-808950.html

到了这里,关于鸿蒙Harmony应用开发,一起来写一个“遥遥领先”的开眼App的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 鸿蒙Harmony应用开发—ArkTS声明式开发(自定义事件分发)

    ArkUI在处理触屏事件时,会在触屏事件触发前进行按压点和组件区域的触摸测试,来收集需要响应触屏事件的组件,再基于触摸测试结果分发相应的触屏事件。在父节点,开发者可以通过onChildTouchTest决定如何让子节点去做触摸测试,影响子组件的触摸测试,最终影响后续的触

    2024年04月14日
    浏览(56)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:ImageAnimator)

    提供帧动画组件来实现逐帧播放图片的能力,可以配置需要播放的图片列表,每张图片可以配置时长。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 无 ImageAnimator() 从API version 10开始,该接口支持在ArkTS卡片中使用。

    2024年03月15日
    浏览(50)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Flex)

    以弹性方式布局子组件的容器组件。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 Flex组件在渲染时存在二次布局过程,因此在对性能有严格要求的场景下建议使用Column、Row代替。 Flex组件主轴默认不设置时撑满父容

    2024年04月11日
    浏览(50)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:组件标识)

    id为组件的唯一标识,在整个应用内唯一。本模块提供组件标识相关接口,可以获取指定id组件的属性,也提供向指定id组件发送事件的功能。 说明: 从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 名称 参数说明 描述 id string 组件

    2024年04月22日
    浏览(65)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:List)

    列表包含一系列相同宽度的列表项。适合连续、多行呈现同类数据,例如图片和文本。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 该组件内容区小于一屏时,默认没有回弹效果。需要回弹效果,可以通过edgeEffe

    2024年04月13日
    浏览(105)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:尺寸设置)

    用于设置组件的宽高、边距。 说明: 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 width(value: Length) 设置组件自身的宽度,缺省时使用元素自身内容需要的宽度。若子组件的宽大于父组件的宽,则会画出父组件的范围。 从API ver

    2024年03月15日
    浏览(85)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:文本通用)

    文本通用属性目前只针对包含文本元素的组件,设置文本样式。 说明: 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 名称 参数类型 描述 fontColor ResourceColor 设置字体颜色。 从API version 9开始,该接口支持在ArkTS卡片中使用。 fon

    2024年03月23日
    浏览(50)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:安全区域)

    安全区域是指页面的显示区域,默认不与系统设置的非安全区域比如状态栏、导航栏区域重叠,默认情况下开发者开发的界面都被布局在安全区域内。提供属性方法允许开发者设置组件绘制内容突破安全区域的限制,通过expandSafeArea属性支持组件不改变布局情况下扩展其绘制

    2024年04月29日
    浏览(40)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:边框设置)

    设置组件边框样式。 说明: 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 border(value: BorderOptions) 设置边框样式。 卡片能力:  从API version 9开始,该接口支持在ArkTS卡片中使用。 系统能力:  SystemCapability.ArkUI.ArkUI.Full 参数: 参数

    2024年04月23日
    浏览(51)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Checkbox)

    提供多选框组件,通常用于某选项的打开或关闭。 说明: API version 11开始,Checkbox默认样式由圆角方形变为圆形。 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 无 Checkbox(options?: CheckboxOptions) 多选框组件。 卡片能力:  从

    2024年04月11日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包