鸿蒙开发
文章平均质量分 89
李元静
专注移动开发10年,对Android、鸿蒙、Python以及Flutter均有涉猎。最近更新Python爬虫与鸿蒙专栏,著有《Flutter App开发从入门到实战》一书,感兴趣的读者加微极客学编程,实时掌握博主的更新动态。
展开
-
深度解析HarmonyOS开发-活动召集令元服务【鸿蒙北向应用开发实战】
元服务 (原为原子化服务) 是一种基于HarmonyOS API的全新服务提供方式,元服务仅需开发一次,便可以运行在多种类型的终端设备上,以鸿蒙万能卡片等多种呈现形态, 向用户提供更轻量化的服务。鸿蒙万能卡片是元服务最主要的呈现形态之一(其他形态如语音、图标等),每一个万能卡片都是在桌面上“永远打开的”元服务/应用,将元服务/应用的重要信息以卡片的形式展示在桌面,通过轻量交互行为实现服务直达。原创 2023-12-07 18:26:52 · 20029 阅读 · 1 评论 -
HDC即将开始,有哪些亮点值得期待?
最重磅的当然是HarmonyOS 3.1beta版本将于11月4日在华为开发者大会2022(HDC)现场宣布发布,代表着鸿蒙生态新的征程。除正式发布外,最近华为开发者学堂已经上线的一些鸿蒙生态相关课程也配置好了证书。现在一些官方课程的学习群里常常内卷,很多童鞋以收集证书为乐。有的童鞋已经获得了金色的证书,之前学堂的证书是蓝色,鸿蒙生态相关课程的证书是金色,可谓十分排面。更妙的是原创 2022-11-02 20:33:02 · 1735 阅读 · 2 评论 -
华为鸿蒙手表实现除夕夜烟花燃放效果
除夕夜烟花燃放效果目录前言image-animator组件实现表盘烟花绽放前言经过一年多的普及与应用,鸿蒙系统早已经涉及华为的各个终端设备,比如手机、音箱、手表等等。正好博主拿到了华为WATCH GT Runner,那就用它来写鸿蒙手表开发的知识。image-animator组件因为是第一篇博文讲解,为了让大家对鸿蒙手表App开发更感兴趣,我们不单独讲解任何组件。这里,我们通过除夕夜华为手表表盘绽放烟花效果,来让大家更有开发兴趣。首先,在手表表盘绽放烟花,肯定是一个动态过程,可以用video组件原创 2022-02-07 18:02:36 · 2915 阅读 · 4 评论 -
HarmonyOS实战—将CSDN博文搬上鸿蒙卡片
目录HarmonyOS实战创建4*4的卡片HarmonyOS实战目前,CSDN官方App并没有适配鸿蒙系统,但是我们是程序员,完全可以自己开发,何须等待CSDN呢?自己动手丰衣足食,今天,我们来实现一个有趣的鸿蒙卡片。也就是将自己的最新的博文前10篇搬上鸿蒙卡片,并展示给大家。除了将10篇最新的博文搬上鸿蒙卡片之外,我们还需要给鸿蒙的卡片提供可编辑的功能,让用户替换搜索博主,自动替换对应博主的前10篇博文。下面,我们来一一实现这些功能。创建4*4的卡片我们首先需要观察一下CSDN博文的标题长度原创 2021-08-11 18:10:06 · 1923 阅读 · 12 评论 -
鸿蒙开发(18)---加载网络图片
目录加载网络图片获取网络图片加载网络图片在实际的项目中,我们并不总是显示资源文件的图片,在浏览资讯、微博时,基本上都是要从网络上进行加载的。所以,掌握网络图片加载,或者说网络获取的相关知识,才是真正开发App的基础。当然,网络任务不能在主线程中进行,其中还涉及线程的相关知识。获取网络图片首先,我们需要获取网络图片。一般来说,我们都是通过网址请求获取图片的输入流InputStream。示例代码如下所示(HttpsUtils):public class HttpsUtils { priv原创 2021-07-10 18:34:31 · 3621 阅读 · 12 评论 -
鸿蒙开发(17)---WebView组件
目录WebView组件WebView组件原创 2021-07-07 18:09:03 · 6756 阅读 · 29 评论 -
HarmonyOS实战—可编辑的卡片交互
目录HarmonyOS实战前言何为卡片编辑功能?定义编辑界面HarmonyOS实战前言在前面的天气卡片设计中,我们设计了一个天气类卡片在桌面进行7日天气的直观显示。但其并不具备选择城市切换的功能,实用性并不高。所以,今天博主将详细介绍鸿蒙原子化开发的编辑交互功能。何为卡片编辑功能?首先,我们需要来看一张图,认识一下有无卡片编辑功能样式到底有何不同。具体效果图如下所示:可以看到,默认情况下鸿蒙的手机卡片是没有任何编辑功能的,那么如果让其有编辑功能呢?答案在我们的config.json文件的卡原创 2021-07-05 19:39:00 · 1691 阅读 · 10 评论 -
HarmonyOS实战—欧洲杯还可以这么玩?
目录HarmonyOS实战前言创建卡片卡片的样式开发布局设计index.hmlindex.cssindex.json卡片的交互卡片数据的初始化卡片的定时更新权限设置HarmonyOS实战前言六月以来,欧洲杯正让国内的体育迷陷入狂欢。特别是今晚,欧洲杯1/4决赛正式开启大幕,相信观看的国人会越来越多。那么在鸿蒙手机上,设计一个欧洲杯卡片,用于在桌面提醒各位球迷可谓相得益彰,毕竟实时球讯,亮屏即达。首先,我们需要分析一下欧洲杯赛事的卡片布局,如上图所示。布局之中,有一张图片以及一段资讯文字同时原创 2021-07-02 20:53:22 · 2725 阅读 · 20 评论 -
HarmonyOS实战—天气类卡片设计
目录HarmonyOS实战前言7日天气的布局卡片的事件定义获取基础的天气数据解析Json数据卡片初始化刷新天气功能实现卡片界面的样式网络请求定义权限HarmonyOS实战前言对于日常的天气类App来说,我们用户应该很少与其进行交互,毕竟都是一些简单的数据,偶尔用到查看即可。但是,查看7日天气必须打开App非常不方便,如果开发中能够提供一个7日天气卡片到桌面,肯定能获得用户的好感。所以,今天的内容就是实现一个7日天气的原子化服务。7日天气的布局首先,我们肯定需要完善7日天气的布局。众所周知,原创 2021-06-30 19:17:31 · 5508 阅读 · 29 评论 -
鸿蒙开发(16)---PageSliderIndicator组件
目录PageSliderIndicator组件布局文件PageSlider图片页面PageSliderIndicator与PageSlider关联PageSliderIndicator组件看到这个组件,哪怕学过其他开发,估计也会有点陌生。因为它与前面的PageSlider组件很像。没错,你可以把它想象成一个页面的切换。同时,也可以把前端swiper组件当成页面的切换,只是其切换的是图或者文字,而PageSlider切换的是界面。PageSliderIndicator等价于前端的swiper组件。今原创 2021-06-29 19:28:38 · 3764 阅读 · 4 评论 -
鸿蒙开发(15)---PageSlider组件
目录PageSlider组件基本用法PageSlider组件在前面介绍TabList组件之时,博主就提示过了,如果需要使用TabList进行页面的切换,必然用到PageSlider组件。所以,今天我们将详细介绍PageSlider组件的使用规则。基本用法首先,我们使用XML布局文件进行PageSlider组件的定义。示例如下:<PageSlider ohos:id="$+id:test_pageslider" ohos:height="match_content"原创 2021-06-28 19:01:24 · 2372 阅读 · 12 评论 -
鸿蒙开发(14)---ListContainer列表组件
目录ListContainer列表组件基本用法创建ListContainer组件创建数据实体类定义适配器将数据添加到ListContainer组件横向ListContainerListContainer列表组件在实际的App开发中,我们最最最常用的其实就是列表组件。在Android中,它是ListView与recyclerview。在鸿蒙中,它是ListContainer。下面,我们将详细介绍ListContainer组件的使用方式。基本用法在我们创建使用ListContainer组件时,我们一般原创 2021-06-27 19:10:42 · 3557 阅读 · 5 评论 -
鸿蒙开发(13)---ProgressBar与RoundProgressBar组件
目录ProgressBar组件基本实现代码实现样式操作显示加载的数值ProgressBar组件从名字我们就可以看出来,这是一个加载进度条。但是你不要小看这款进度条,Android的进度条非常不容易自定义。但鸿蒙的进度条可以玩出各种花样。今天,我们就来看看如何在鸿蒙手机上实现各式各样的进度条。基本实现首先,还是使用XML布局文件,展示一下ProgressBar组件的默认样子。示例代码如下所示:<ProgressBar ohos:id="$+id:test_progressbar"原创 2021-06-26 19:46:25 · 1516 阅读 · 3 评论 -
鸿蒙开发(12)---Checkbox组件
目录Checkbox组件Checkbox组件有单选操作,就有多选操作。在鸿蒙App的开发当中,我们一般使用Checkbox组件进行多项选择的操作。本篇,将详细介绍Checkbox组件的使用规则。原创 2021-06-25 19:02:23 · 1909 阅读 · 7 评论 -
鸿蒙开发(11)---RadioButton与RadioContainer组件
目录RadioButton与RadioContainer组件创建单选项监听事件RadioButton与RadioContainer组件在个人信息的选择中,一般都会涉及到性别的处理。而性别显然是一个单选问题,这种单选情况,在鸿蒙开发中需要使用RadioButton与RadioContainer组件。本篇,将详细介绍RadioButton与RadioContainer组件的使用规则。创建单选项首先,我们用纯XML布局文件创建一个单选项选择组件。示例代码如下所示:<?xml version="原创 2021-06-24 18:50:20 · 1486 阅读 · 9 评论 -
HarmonyOS实战—卡片的样式设计
目录原子化服务初尝试什么是原子化服务原子化服务的优点创建原子化服务项目运行原子化服务项目原子化服务初尝试什么是原子化服务原子化服务是HarmonyOS提供的一种面向未来的服务提供方式,是有独立入口的(用户可通过点击方式直接触发)、免安装的(无需显式安装,由系统程序框架后台安装后即可使用)、可为用户提供一个或多个便捷服务的用户应用程序形态。例如:某传统方式的需要安装的“购物应用A”,在按照原子化服务理念调整设计后,成为由“商品浏览”“购物车”“支付”等多个便捷服务组成的、可以免安装的“购物原子化服务原创 2021-06-22 20:01:10 · 2858 阅读 · 12 评论 -
HarmonyOS实战—影视类卡片应用
目录HarmonyOS实战影视类卡片应用实战swiper选项卡推荐功能网络数据请求页面路由list列表横向视频推荐grid网格视频推荐样式文件(index.css)视频播放页面页面(pagevideo.hml)用户交互(pagevideo.js)界面样式(pagevideo.css)其他设置HarmonyOS实战影视类卡片应用实战在前面,博主详细介绍了HarmonyOS原子化服务的优点,通过卡片式操作,我们可以快速找到我们想要的功能模块。而在实际的用户体验中,比如影视类用户,有这么一群人,它们只关原创 2021-06-20 19:27:34 · 7292 阅读 · 71 评论 -
鸿蒙开发(10)---Switch组件
目录Switch组件创建Switch组件Switch组件对于这个组件,Android开发并没有直接提供,但IOS开发中是有UISwitch的。鸿蒙的Switch组件与它的效果差不多。本篇,将详细介绍Switch组件的使用规则。创建Switch组件首先,我们通过XML布局文件来创建一个Switch组件。示例代码如下:在这里插入代码片...原创 2021-06-19 20:00:32 · 1671 阅读 · 7 评论 -
HarmonyOS实战—原子化服务初尝试
目录原子化服务初尝试什么是原子化服务原子化服务的优点创建原子化服务项目运行原子化服务项目目录结构分析原子化服务初尝试什么是原子化服务原子化服务是HarmonyOS提供的一种面向未来的服务提供方式,是有独立入口的(用户可通过点击方式直接触发)、免安装的(无需显式安装,由系统程序框架后台安装后即可使用)、可为用户提供一个或多个便捷服务的用户应用程序形态。例如:某传统方式的需要安装的“购物应用A”,在按照原子化服务理念调整设计后,成为由“商品浏览”“购物车”“支付”等多个便捷服务组成的、可以免安装的“购原创 2021-06-18 18:37:16 · 5023 阅读 · 15 评论 -
鸿蒙开发(9)---TimePicker组件
目录TimePicker组件创建TimePicker组件其中属性非24小时制滚动与隐藏TimePicker组件有DatePicker的日期选择组件,那么也肯定有类似的事件选择组件。鸿蒙给我们提供了TimePicker组件进行时间选择操作。下面,我们将详细讲解TimePicker组件的使用规则。创建TimePicker组件首先,我们来创建一个TimePicker组件。这里,我们会用到一些前面没有使用过的属性,不过读者别急,后面有表格专门列出其意义。示例如下:<TimePicker原创 2021-06-16 19:20:09 · 1933 阅读 · 10 评论 -
鸿蒙开发(8)---DatePicker组件
目录DatePicker组件标题DatePicker组件在我们讲解Picker组件实现城市地址选择时,是不是有的读者也想过用其实现日期的选择呢?其实,Picker组件可以用于日期的选择,但是如果用于选择年月日,那么和城市一样你就要操作3个Picker组件,无疑增加了代码量。而鸿蒙给我们直接提供了DatePicker组件今天日期的选择操作。下面,我们来讲解DatePicker组件的使用规则。标题...原创 2021-06-15 19:16:19 · 3698 阅读 · 15 评论 -
鸿蒙开发(7)---Picker组件
目录鸿蒙App开发之Picker组件实现简单的Picker组件实现城市选择器鸿蒙App开发之Picker组件在众多的App中,我们经常会看到各式各样的滑动选择器,比如说某些快递的App,选择地址分级的时候,往往通过滑动选择城市。这个在鸿蒙中可以通过Picker组件来实现。今天,我们就来详细讲解Picker组件的使用方式。实现简单的Picker组件首选,我们来实现一个简单的Picker滑动选择器组件。示例代码如下:<Picker ohos:id="$+id:test_picker"原创 2021-06-13 20:04:51 · 3109 阅读 · 29 评论 -
鸿蒙开发(6)---TabList组件
目录鸿蒙App开发之TabList组件创建TabList组件TabList事件监听鸿蒙App开发之TabList组件在众多的资讯App中,我们能够看到各式各样的头部标签。比如我们的CSDN,通过头部分类标签可以快速找到自己需要学习的内容。这在鸿蒙之中实现起来也是非常简单的,它给我们提供了TabList组件。今天,我们将详细介绍TabList并实现相应的交互效果。创建TabList组件同样的,我们首先在XML布局文件中创建TabList组件。示例代码如下:<TabList ohos原创 2021-06-12 18:37:33 · 2368 阅读 · 10 评论 -
鸿蒙开发(5)---Image组件
目录鸿蒙App开发之Image组件加载本地图片鸿蒙App开发之Image组件手机App之所以绚丽多彩,当然是因为图片丰富了我们App的交互样貌。可以说,目前手机上的所有App基本都离不开图片的使用。而在鸿蒙上显示图片的组件为:Image组件。今天,我们就专门介绍Image组件的使用方式。加载本地图片加载图片的方式有几种,最常见的当然是加载网络图片。不过,对于大多数交互类的图片来说,都是放在本地的,因为其非常小,很方便。...原创 2021-06-10 19:16:06 · 3862 阅读 · 20 评论 -
鸿蒙开发(4)---初识鸿蒙开发
目录鸿蒙App开发搭建鸿蒙开发环境创建一个鸿蒙的项目鸿蒙项目的目录结构鸿蒙App开发博主通过前面介绍的3个组件,让大家认识到了鸿蒙开发的魅力。不过,话又说回来,对于初学者来说,没有剖析项目的目录,直接上代码可能并不容易上手。今天,博主就将鸿蒙的目录结构给大家分析清楚,方便后续的知识学习。搭建鸿蒙开发环境首先,我们需要安装Java JDK,博主后续的讲解大部分都是用Java语言开发鸿蒙App,所以系统中必须有Java JDK,安装地址:https://www.oracle.com/java/tec原创 2021-06-09 19:35:53 · 46985 阅读 · 164 评论 -
鸿蒙开发(3)---TextField组件
目录鸿蒙App开发之TextField创建TextField实战登录界面鸿蒙App开发之TextField在前面的Text与Button讲解之后,我们实现了一个拨号的界面。但其实拨号的号码显示并不是使用Text组件,因为它监测删除太麻烦。而真正用于拨号界面的组件是TextField文本框。同时,它也是继承自Text组件:public class TextField extends Text和前面的章节一样,今天我们专门讲解TextField文本框的使用方式。创建TextField首先,我们原创 2021-06-07 19:45:11 · 3257 阅读 · 17 评论 -
鸿蒙开发(2)---Button组件
目录鸿蒙开发鸿蒙开发原创 2021-06-06 19:39:11 · 6825 阅读 · 36 评论 -
鸿蒙开发(1)---Text组件
目录鸿蒙开发Text组件鸿蒙开发从2021年6月2号开始,鸿蒙系统已经完全开源。目前学习鸿蒙开发正当其时,如果你之前学习过Android开发,那么鸿蒙完全可以直接上手。不过,博主写的鸿蒙开发课程任何人都可以学习,因为都是从基础的组件开始讲解。下面,博主将从Text组件入门,来一步步讲解鸿蒙开发的要点。Text组件Text是用来显示字符串的组件,在界面上显示为一块文本区域。Text作为一个基本组件,有很多扩展,常见的有按钮组件Button,文本编辑组件TextField。...原创 2021-06-05 19:58:20 · 6682 阅读 · 37 评论