首页 > 其他分享 >鸿蒙HarmonyOS应用开发 | 「鸿蒙技术分享」HarmonyOS NEXT元服务卡片实战体验

鸿蒙HarmonyOS应用开发 | 「鸿蒙技术分享」HarmonyOS NEXT元服务卡片实战体验

时间:2024-12-21 20:31:27浏览次数:4  
标签:服务 鸿蒙 卡片 NEXT HarmonyOS 开发 体验

「鸿蒙技术分享」—HarmonyOS NEXT 元服务卡片实战体验

HarmonyOS NEXT 是华为鸿蒙系统的最新版本,带来了更为流畅、高效的体验,并以元服务卡片(Service Widget)为核心,优化了服务分发和交互体验。本文将从开发者的角度,分享如何开发和部署元服务卡片,并结合代码实例,带你体验全新的卡片开发流程。

image-20241129003439910

核心特点

  1. 自主可控:HarmonyOS NEXT实现了操作系统的自主可控,为用户提供了更加安全、可靠的操作环境。
  2. 安装包小:通过对系统架构的深度优化,HarmonyOS NEXT实现了安装包体积的显著缩小,使得系统更加轻量、易于安装。
  3. 运行速度快:系统运行速度得到了显著提升,为用户提供了更加流畅的操作体验。
  4. 系统简洁精致:HarmonyOS NEXT的界面设计简洁精致,动效符合直觉,提升了用户的整体操作体验。
  5. 强大互联能力:支持多种终端设备,包括手机、平板、智能电视、智能穿戴、车载系统等,实现了一次开发、多端部署,降低了开发成本。
  6. 新安全访问机制:采用多层安全防护机制,为用户提供金融级安全防护,确保用户隐私和数据安全。

技术创新

  1. 分布式架构:HarmonyOS NEXT采用分布式技术,将各个设备连接成一个超级终端,实现设备间的无缝协同、资源共享。
  2. 全场景智慧体验:为用户提供全方位、个性化的智慧服务,覆盖娱乐、办公、出行等场景,让生活更便捷。
  3. ArkUI框架:推出了新一代的UI框架ArkUI,支持多种编程语言,简化了界面开发过程,提升了应用性能。
  4. ArkCompiler编译器:实现了跨语言的高效编译,提高了应用运行速度。
  5. 分布式数据库:实现数据在多个设备间的无缝同步,为用户提供一致的数据体验。
  6. 智能AI:内置AI能力,为用户提供智能语音助手、视觉识别等创新功能。

什么是元服务卡片?

元服务卡片是鸿蒙系统(HarmonyOS)中元服务的一种主要呈现形态

  • 定义:元服务卡片是基于HarmonyOS API开发的一种新型应用程序形态,它作为元服务的界面展示形式,将应用的重要信息或操作前置到卡片上,以实现服务直达、减少体验层级的目的。
  • 背景:元服务(原名原子化服务)是HarmonyOS提供的一种面向未来的服务提供方式,具有独立入口、免安装、可为用户提供一个或多个服务的特点。

image-20241129003424630

元服务卡片是 HarmonyOS NEXT 引入的新一代服务交互方式,用户可以通过桌面直接与应用核心功能交互,而无需进入应用。
元服务卡片具有以下特点:

  • 动态化:支持实时数据更新。
  • 多样化:提供多种卡片模板,适应不同场景。
  • 轻量化:小体积、高性能。

image-20241129003617299

开发流程与工具

  • 开发框架:方舟开发框架(ArkUI)是一套构建HarmonyOS应用及服务界面的UI开发框架。它提供了极简的UI语法、丰富的UI组件以及实时界面预览工具,帮助开发者提升开发效率。
  • 开发流程:开发者首先需要创建工程并关联云开发资源,然后使用ArkUI框架进行界面开发。在开发过程中,可以利用DevEco Studio提供的各种工具进行调试和测试。最后,将开发完成的元服务卡片进行打包并提交到AppGallery Connect进行上架分发。

综上所述,元服务卡片是鸿蒙系统中一种重要的服务呈现形态,它为用户提供了更加便捷、高效的服务体验。同时,也为开发者提供了新的开发和推广机会。


实战体验:开发一个服务卡片案例

image-20241129004429321

环境准备

在开始开发之前,请确保你已完成以下准备工作:

  1. 开发工具:安装 HarmonyOS DevEco Studio 最新版本。
  2. 设备环境:一台支持 HarmonyOS NEXT 的开发板或模拟器。
  3. 开发语言:本次示例使用ArkTS。

image-20241129003655147

项目初始化

创建工程
在 DevEco Studio 中,选择 New HarmonyOS Project,创建一个 Empty Feature Ability 项目。

image-20241129004016946

配置元服务卡片
config.json 文件中,添加卡片描述信息:

"widgets": [
    {
        "type": "form",
        "name": "WeatherCard",
        "ability": "com.example.weather.MainAbility",
        "description": "A simple weather card",
        "formConfig": {
            "dimension": "2x2"
        }
    }
]

卡片界面设计

接下来,我们使用 ArkTS 语言来设计卡片的界面。在 pages/index.ets 文件中,添加以下代码:

import { WeatherCardData } from '../model/WeatherCardData';

@Entry
@Component
struct WeatherCard {
  private data: WeatherCardData = new WeatherCardData();

  build() {
    Column() {
      Text(this.data.temperature).fontSize(20)
      Text(this.data.condition).fontSize(16)
    }
  }
}

这里我们创建了一个名为 WeatherCard 的组件,它展示了天气的温度和状况。

数据更新

为了实现卡片的动态化,我们需要定期更新卡片上的数据。可以使用定时器来实现数据的更新。在 pages/index.ets 文件中,添加以下代码:

import { WeatherCardData } from '../model/WeatherCardData';

@Entry
@Component
struct WeatherCard {
  private data: WeatherCardData = new WeatherCardData();
  private timer: number = -1;

  onShow() {
    this.timer = setInterval(() => {
      this.data.updateData();
    }, 60000);
  }

  onHide() {
    if (this.timer!== -1) {
      clearInterval(this.timer);
      this.timer = -1;
    }
  }

  build() {
    Column() {
      Text(this.data.temperature).fontSize(20)
      Text(this.data.condition).fontSize(16)
    }
  }
}

onShow 方法中,我们启动了一个定时器,每隔一分钟更新一次数据。在 onHide 方法中,我们清除定时器,以避免资源浪费。

数据模型

image.png

创建一个数据模型类来存储天气数据。在 model/WeatherCardData.ets 文件中,添加以下代码:

class WeatherCardData {
  temperature: string = 'Unknown';
  condition: string = 'Unknown';

  updateData() {
    // 这里可以通过网络请求或其他方式获取天气数据
    this.temperature = '25°C';
    this.condition = 'Sunny';
  }
}

部署与调试

  1. 构建项目
    在 DevEco Studio 中点击 Build > Build Project,确保项目无误。
  2. 部署到设备
    连接开发板或模拟器,点击 Run,选择运行目标设备。
  3. 调试卡片
    通过日志查看数据绑定是否正常,并检查卡片界面的更新情况。

优化与总结

体验优化

  • 动态更新:实现天气实时刷新功能,可以设置定时任务或订阅模式。
  • 视觉优化:使用动画和渐变背景提升视觉效果。
  • 多维适配:支持不同尺寸的卡片布局。

实践感受

开发元服务卡片的过程相对直观,DSL 描述语言简洁清晰,逻辑层支持多种编程语言,使得开发效率得到了明显提升。

实战感受

在开发 HarmonyOS NEXT 元服务卡片的过程中,整体体验非常直观且高效,主要有以下几点感受:

  1. 开发流程流畅
    借助 DevEco Studio 和 ArkUI 框架,从工程创建到卡片界面开发再到数据更新的实现,流程清晰,工具完善,大大降低了开发门槛。
  2. 语言简洁灵活
    ArkTS 的 DSL 描述语言直观易懂,结合框架提供的组件库和丰富的 API,使得界面逻辑分离明确,开发者能够专注于功能的实现。
  3. 动态化支持强大
    在开发过程中,通过设置定时器或订阅模式,可以轻松实现实时数据更新和动态化效果,满足多样化的业务需求。
  4. 调试工具便捷
    借助 DevEco Studio 内置的实时预览和设备模拟功能,可以快速发现问题并验证解决方案,显著提高了调试效率。
  5. 优化空间丰富
    在体验过程中,发现元服务卡片的界面设计还可以通过添加动画、背景渐变等视觉优化进一步提升用户体验。同时,支持多尺寸布局适配的能力为复杂场景开发提供了更多可能性。

总体而言,开发元服务卡片的过程兼具技术挑战与创作乐趣。借助 HarmonyOS 提供的开发工具和框架,可以快速构建高效、轻量的卡片服务,为用户带来更便捷的交互体验,也为开发者开辟了更广阔的创新空间。

总结

本文围绕 HarmonyOS NEXT 的核心功能 元服务卡片 展开,全面介绍了其定义、特点及开发流程,并通过一个天气卡片的开发案例,详细展示了从环境搭建到卡片部署的全过程。

元服务卡片以其动态化、轻量化和高效交互的特点,重新定义了用户与应用的交互方式,为开发者提供了更直观、便捷的开发体验。在实战开发中,借助 ArkUI 框架,开发者可以通过简洁的语法和丰富的组件快速实现功能并提升用户体验。

随着鸿蒙生态的不断扩展,元服务卡片将进一步支持更多交互形式和跨设备场景,为用户带来更丰富的服务触达体验,也为开发者创造新的机遇和价值。

HarmonyOS NEXT的发布对华为及整个行业都产生了深远的影响。它不仅展示了华为的技术实力,还敏锐地把握了市场需求。同时,吸引了更多的开发者和合作伙伴加入鸿蒙生态体系,共同推动鸿蒙生态的繁荣发展。

标签:服务,鸿蒙,卡片,NEXT,HarmonyOS,开发,体验
From: https://www.cnblogs.com/baoto/p/18621137

相关文章

  • HarmonyOS Next开发工具DevEco Studio介绍:ASan与TSan检测根治你的C++恐惧症
    1、背景介绍很多开发者面对C++都很犯怵,其中主要的一块就是内存操作。不合理的内存操作,比如数组越界、内存泄露、释放已释放的地址,可能会引起程序性能问题:内存消耗大,卡顿,更严重的会导致程序出现崩溃。当应用运行发生错误使应用进程终止时,应用将会抛出错误日志以通知应用崩溃......
  • 在鸿蒙环境中,关系型数据库的详细讲解(1)内含:数据库的创建,数据的插入同步(insert),异步(
    前言看这篇文章的应该有和我一样是大学生并且去了一个班并且在做一个结课项目吧,至于班的名字这里就不详细说了,那废话不多说直接进入正题1.为什么要用数据库1.1持久化数据存储使用数据库可以在应用断电,重启保持数据不丢失我在这里举个例子:你在王者*耀里面自定义了一个键......
  • 鸿蒙元服务从0到上架【第一篇】(最后一步容易中招)
    最后一招没做好,上架审核极可能被驳回!何为元服务元服务(原名为原子化服务)是华为HarmonyOS提供的一种面向未来的服务提供方式,是有独立入口、免安装、可为用户提供一个或多个服务的新型应用程序形态。元服务基于HarmonyOSAPI开发,支持运行在1+8+N设备上,供用户在合适的场景......
  • VAR:Visual Autoregressive Modeling: Scalable ImageGeneration via Next-Scale Pred
    目录一、概述二、相关工作1、大型自回归语言模型的性质2、视觉生成三、VAR 1、讨论传统AR的缺点2、VAR框架一、概述    该论文提出了一种新的生成范式VAR视觉自回归模型,(区别于ddpm那种加噪之后unet去噪的工作),这种自回归模型实现coarsetofine的方法进行生......
  • 鸿蒙HarmonyOS应用开发 |鸿蒙技术分享HarmonyOS Next 深度解析:分布式能力与跨设备协作
    鸿蒙技术分享:HarmonyOSNext深度解析:分布式能力与跨设备协作实战随着万物互联时代的到来,操作系统作为连接设备、应用与用户体验的核心,扮演着不可或缺的角色。华为最新发布的HarmonyOSNext(鸿蒙操作系统下一代版本)不仅在技术架构上实现了颠覆性升级,更在生态体验上迈向了一个新的......
  • 鸿蒙HarmonyOS应用开发 | HarmonyOS Next-从应用开发到上架全流程解析
    HarmonyOSNext-从应用开发到上架全流程解析随着智能设备的不断普及,操作系统的竞争变得愈加激烈。在这个背景下,华为推出的HarmonyOS(鸿蒙操作系统)逐渐崭露头角,成为一个引人注目的新兴平台。本文将深入探讨HarmonyOSNext的应用开发流程,并特别关注鸿蒙应用上架的全过程,同时介绍鸿蒙......
  • Hexo Next主题本地搜索功能不可用问题解决
    个人博客地址:HexoNext主题本地搜索功能不可用问题解决|一张假钞的真实世界。按照Next主题官网配置步骤(LocalSearch)配置后,站点的“搜索”菜单点击无响应。查看Next主题源代码({Next主题根目录}/hexo-theme-next/layout/_partials/search/index.njk),发现站点优先使用Algolia......
  • Hexo Next主题集成百度统计
    个人博客地址:HexoNext主题集成百度统计|一张假钞的真实世界。首先,需要在百度统计控制台新增自己的站点。点击“新增网站”按钮:按照要求输入相关信息并保存,页面跳转至代码获取页面。从代码页面中拷贝网站的ID:......
  • 手把手教你华为鸿蒙开发之第十三节
    华为鸿蒙开发:自定义组件的创建与使用引言在华为鸿蒙应用的开发中,自定义组件是构建复杂界面和重用代码的重要手段。通过自定义组件,开发者可以将复杂的UI逻辑封装起来,提高代码的可维护性和可读性。本文将通过DevEcoStudio详细介绍如何在鸿蒙应用中创建和使用自定义组件,包括组......
  • 鸿蒙开发-使用animateTo 制作动画
    在鸿蒙应用开发中,使用ArkTS版本制作动画是一个重要的技能。以下是一些关于如何在ArkTS中制作动画的详细步骤和示例:一、动画类型粒子动画(Particle):粒子动画是在一定范围内随机生成的大量粒子产生运动而组成的动画。动画元素是一个个粒子,这些粒子可以是圆点、图片等。通......