开发的鸿蒙开发有必要学吗程序过一段时间就用不了了?

如何开发一个鸿蒙的应用软件,别急,华为工程师已经告诉你了!
此前从未能有一个手机操作系统有鸿蒙OS这样令我这么期待,从去年年底开始,有关鸿蒙OS的消息就一直牵动我的心,大家都对这一华为自研的系统格外关注,而当华为公司在今年五月下旬宣布6月2号当天将正式发布鸿蒙OS系统的时候,我对这一系统的旗舰也逐渐达到巅峰,如今6月2号终于到来,鸿蒙OS也真的和大家见面了。
以下整理转发鸿蒙提供的开发文档
https://developer.harmonyos.com/cn/home/
转载地址
开发工具
开发工具下载:https://developer.harmonyos.com/cn/develop/deveco-studio#download_release
新手指导教程通用开发历程各类设备(手机/平板、智能穿戴、智慧屏等)通用的用户应用程序开发历程如下表所示。任务简介相关资源认识HarmonyOS了解HarmonyOS的系统定位、架构、技术特性等。了解HarmonyOS应用开发的基本概念和基础知识。HarmonyOS概述开发基础知识准备开发环境安装开发工具,并配置相关开发环境。快速构建首个应用,熟悉HarmonyOS应用开发流程。下载和安装软件配置开发环境快速入门开发AbilityAbility是HarmonyOS应用程序的重要组成部分,分为FA(Feature Ability)和PA(Particle Ability)两种类型:FA支持Page Ability:Page模板是FA唯一支持的模板,用于提供与用户交互的能力。PA支持Service Ability和Data Ability:Service模板用于提供后台运行任务的能力;Data模板用于对外部提供统一的数据访问抽象。进行HarmonyOS应用开发,首先要了解Ability如何使用。Page AbilityService AbilityData Ability开发UIFA需要提供UI用于与用户进行交互,HarmonyOS提供了Java UI和JS UI两种UI框架:Java UI提供了细粒度的UI编程接口,使应用开发更加灵活;JS UI提供了相对高层的UI描述,使应用开发更加简单。说明针对轻量级智能穿戴(Lite Wearable),现阶段只使用JS语言进行应用开发,详见轻量级智能穿戴开发。Java UI框架Java API参考JS UI框架JS API参考开发业务功能媒体:视频、音频、图像、相机等功能的开发。安全:权限、生物特征识别等功能的开发。AI:图像超分、语音识别、码生成等功能的开发。网络连接:NFC、蓝牙、WLAN等功能的开发。设备管理:传感器、控制类小器件、位置等功能的开发。数据管理:数据库、分布式数据/文件服务、数据搜索等功能的开发。线程:线程管理、线程间通信等功能的开发。IDL:声明系统服务和Ability对外提供的服务接口,并生成相关代码。媒体开发指南安全开发指南AI开发指南网络与连接开发指南设备管理开发指南数据管理开发指南线程开发指南IDL接口使用指南调试应用如果需要在真机设备上调试应用,则在编译前需要先申请调试证书,并配置签名信息。以便于在编译构建时,生成带签名信息的HAP。如果在模拟器上调试应用,则不需要签名,直接编译构建HAP即可。使用真机进行调试使用模拟器进行调试发布应用如果需要发布到应用市场,需要申请发布证书,并对APP进行签名,再申请上架。应用发布原子化服务开发历程HarmonyOS除支持传统方式的需要安装的应用外,还支持提供特定功能的免安装的应用(即原子化服务),供用户在合适的场景、合适的设备上便捷使用。原子化服务相对于传统方式的需要安装的应用更加轻量,同时提供更丰富的入口、更精准的分发。原子化服务的详细介绍请参见“原子化服务”。其基本开发历程如下表所示。任务开发历程相关内容了解HarmonyOS了解HarmonyOS的系统定位、技术特性、应用开发的基本概念和基础知识,熟悉HarmonyOS应用开发通用流程。HarmonyOS概述开发基础知识快速入门设计原子化服务在设计阶段,需要满足原子化服务的设计规范,包括图标、卡片、分布式等规范。原子化服务设计掌握原子化服务约束了解原子化服务之间的调用管控机制。三方应用调用管控机制开发原子化服务基础体验了解原子化服务总体开发规则、如何开发服务卡片等基础体验。原子化服务总体开发要求服务卡片开发指南开发原子化服务分布式体验了解如何开发流转、分享等分布式体验。流转开发指南华为分享接入指南设备差异化开发历程相对于通用开发历程,智能穿戴、智慧屏存在一些特殊应用开发场景,其补充指导如下表所示。设备类型简介相关资源智能穿戴对于智能穿戴,应用可以通过HarmonyOS提供的接口实现音频、传感器、网络连接、UI交互、消息提醒等常规业务的开发。开发者也可以根据智能穿戴的特点,打造针对智能穿戴的独特应用。智能穿戴开发指南智慧屏基于HarmonyOS,开发者可以开发智慧屏应用,提供丰富的分布式多媒体体验。应用可以通过HarmonyOS的API实现多媒体业务、网络访问、UI开发等能力。智慧屏开发指南路由器对于路由器,应用可以通过HarmonyOS提供的接口实现管理智能设备,如获取智能设备信息、订阅智能设备数据变化、控制智能设备等业务的开发。开发者也可以根据家庭多设备联动的特点,打造针对全屋智能的独特应用。路由器开发指南开发者教程针对重点功能或场景的开发者教程如下表所示。分类主题简介安全HarmonyOS面部识别能力基于HarmonyOS生物特征识别和相机子系统,实现人脸识别和相机拍照功能。设备管理BLE蓝牙低功耗使用Bluetooth Low Energy(低功耗蓝牙)实现设备间通信。通用组件WebView组件使用WebView组件实现应用与Web页面间的通信。自定义组件通过一个圆形抽奖转盘演示HarmonyOS自定义组件的实现。JS组件购物应用演示使用JS实现一款简单的HarmonyOS购物应用。常用组件和布局基于HarmonyOS Java UI,实现常见组件或者布局。AIAI通用文字识别基于AI通用文字识别能力,检测和识别文档翻拍、街景翻拍等图片中的文字。AI语音播报系统基于AI语音播报能力,朗读输入的文字内容。数据库分布式数据库基于分布式数据接口,实现多种设备上一致的数据访问体验。关系型数据库基于Data Ability的关系型数据库和数据管理能力,实现数据库相关应用服务的快速开发。轻量级偏好数据库基于轻量级偏好数据库,实现存储在本地应用数据的访问及操作。媒体音频播放管理基于HarmonyOS Player,实现音频的播放、管理控制和采集。编解码能力基于HarmonyOS编解码能力,实现Camera实时预览流的播放。图片编辑模板基于图片处理能力,实现一个图片编辑模板。图片常见操作基于HarmonyOS图像编解码,实现图片的旋转、剪裁、缩放、镜像。简易视频播放器基于HarmonyOS Player,实现视频文件的播放。分布式分布式地图导航基于分布式能力,实现地图导航信息在手机-车机-智能穿戴设备之间流转。分布式输入法基于分布式能力,将手机作为智慧屏的虚拟控制器,控制文字输入和遥控播放。分布式游戏手柄基于分布式能力,将手机作为智慧屏的虚拟手柄终端,组成全新的多人娱乐场景。分布式邮件编辑基于跨设备迁移和分布式文件能力,实现邮件的跨设备编辑和附件的调用。分布式语音照相机基于分布式文件系统和AI语音识别功能,实现一款分布式语音照相机。分布式调度启动远程FA基于分布式调度的能力,实现远程FA的启动。跨设备视频播放基于分布式能力和IDL跨进程通信,实现视频跨设备播放、控制。分布式新闻客户端基于HarmonyOS应用中Service Ability和Page Ability的使用,实现跨设备FA拉起。分布式亲子早教系统基于分布式能力,实现一个多屏互动、跨设备协同的亲子早教系统。视频课程调试调试流程DevEco Studio提供了丰富的HarmonyOS应用调试能力,支持Java、JS、C/C++单语言调试和JS+Java、Java+C/C++跨语言调试能力,同时还支持分布式应用的跨设备调试,帮助开发者更方便、高效的调试应用。HarmonyOS应用调试支持使用真机设备调试。使用真机设备进行调试前,需要对HAP进行签名后进行调试。详细的调试流程如下图所示。配置应用签名信息对应用进行签名调试应用签名的方式包括如下两种:方式一:通过DevEco Studio自动化签名的方式对应用进行签名;方式二:通过从AppGallery Connect中申请调试证书和Profile文件后,再进行签名。通过DevEco Studio自动化签名的方式更加简单和高效,因此推荐开发者使用自动化签名。关于AppGallery Connect中申请调测证书和Profile的方式,可以参考申请发布证书和Profile文件流程。 连接真机设备,确保DevEco Studio与真机设备已连接。
进入File > Project Structure > Project > Signing Configs界面,点击“Sign In”按钮进行登录。
在AppGallery Connect中创建项目和应用。
登录AppGallery Connect,创建一个项目。
在项目中,点击 添加应用 按钮,创建一个应用。如果是非实名认证的用户,请点击“HAP Provision Profile管理”界面的 HarmonyOS应用 按钮。
选择平台:选择APP(HarmonyOS应用)。支持设备:选择调试的设备类型。应用包名:必须与config.json文件中的“bundleName”取值保持一致。应用名称、应用分类、默认语言请根据实际需要进行设置。
返回DevEco Studio的自动签名界面,点击Try Again,即可自动进行签名。自动生成签名所需的密钥(.p12)、数字证书(.cer)和Profile文件(.p7b)会存放到用户user目录下的.ohos\config目录下。 说明 如果是非实名认证用户,需要先接受“HUAWEI Developer Basic Service Agreement”协议。 设置完签名信息后,点击OK进行保存,然后可以在工程下的build.gradle中查看签名的配置信息。
通过配置文件存储签名信息**(可选)**由于签名配置是开发者的私有信息,DevEco Studio会对签名配置中的密码进行安全保护,但是这个保护会对提交build.gradle到代码仓中带来不便。因此,开发者可以将签名配置信息放在一个独立的文件中,从而可以方便的将build.gradle提交到代码仓,而存放签名配置信息的文件不用提交。 在工程的根目录下创建一个名为signing-config.properties的文件。
打开signing-config.properties文件,写入签名配置信息。签名配置信息可以从工程的build.gradle文件中进行拷贝,p12、p7b和cer文件存储地址可以自定义。 storeFile=D:\\key\\auto_debug_900086000300430549.p12storePassword=0000001BA1E0B33A4507FAAD0CD0F378CE4E6AC5AEBDEA75C3283753284436002D859E52C3836DAD3A3D1CkeyAlias=myApplication_debugkeyPassword=0000001BAC7C26C59AC5EB95E56DFC155C911ED08C658839127F4CEC6AB548B39BE8CC499CE7F27F13AE57profile=D:\\key\\auto_debug_Myapplication_900086000300430549.p7bcertpath=D:\\key\\auto_debug_900086000300430549.cer
打开build.gradle,修改debug或release类型的签名配置信息从signing-config.properties文件中读取。下面是debug类型签名信息的配置示例: apply plugin: 'com.huawei.ohos.hap'...//加载签名信息配置文件def signingConfigPropsFile = rootProject.file("signing-config")def signingConfigProps = new Properties()signingConfigProps.load((new FileInputStream(signingConfigPropsFile)))
ohos {
...
//配置签名信息索引
signingConfigs {
debug {
storeFile file(signingConfigProps['storeFile'])
storePassword signingConfigProps['storePassword']
keyAlias signingConfigProps['keyAlias']
keyPassword signingConfigProps['keyPassword']
signAlg = 'SHA256withECDSA'
profile file(signingConfigProps['profile'])
certpath file(signingConfigProps['certpath'])
}
}
修改完成后重新同步工程即可。 调试设置设置调试代码类型调试类型默认情况下为Detect Automatically,支持Java、JS、C/C++、JS+Java、Java+C/C++工程的调试。只有在JS+Java混合工程中,如果需要单独调试Java代码,这种情况下需要手动修改Debug Type为“Java”。关于各调试类型的说明如下表所示。调试类型调试代码Java Only仅调试Java代码Js Only仅调试JavaScript代码Native Only仅调试C/C++代码Dual(Js + Java)调试JS FA调用Java PA场景的JS和Java代码Dual(Java + Native)调试C/C++工程的Java和C/C++代码Detect Automatically新建工程默认调试器选项,根据调试的工程类型,自动启动对应的调试器。说明JS+Java混合工程中,如果需要单独调试Java代码,这种情况下需要手动修改Debug Type为“Java”。修改调试类型的方法如下。点击Run > Edit Configurations > Debugger,在HarmonyOS App中,选择相应模块, 可以进行Java/JS/C++调试配置。检查config.json文件属性在启动Feature模块的调试前,请检查Feature模块下的config.json文件的abilities数组是否存在“visible”属性,如果不存在,请手动添加,否则Feature模块的调试无法进入断点。Entry模块的调试不需要做该检查。 在工程目录中,点击Feature模块下的src > main > config.json文件,检查abilities数组是否存在“visible”属性。
存在visible属性,且取值为true:可以正常启动调试。不存在,或者取值为false,请根据2进行设置。在abilities数组中手动添加“visible”属性,取值为true。说明如果Feature模块手动添加了“visible”属性为true,表示该模块可以被其它的应用所调用。如果您不允许该模块被其它应用调用,请在调试完成后手动删除visible属性。设置Hap包安装方式在调试阶段,Hap包在设备上的安装方式有2种,您可以根据实际需要进行设置安装方式一:先卸载应用后,再重新安装,该方式会清除设备上的所有应用缓存数据(默认安装方式)。安装方式二:采用覆盖安装方式,不卸载应用,该方式会保留应用的缓存数据。设置方法如下:点击Run > Edit Configurations,设置指定模块的Hap包安装方式,勾选 ”Replace existing application”,则表示采用覆盖安装方式,保留应用缓存数据。如果一个工程中同一个设备存在多个模块(如Phone设备,存在entry和feature模块),且存在模块间的调用时,在调试阶段需要同时安装多个模块的hap包到设备中。此时,需要在待调试模块的设置项中勾选“Deploy Multi Hap Package”。例如entry模块调用feature模块,在调试entry模块时,需要同时安装feature模块,您应该在entry模块的调试设置项中勾选“Deploy Multi Hap Package”后再启动调试。启动调试 在工具栏中,选择调试的设备,并点击Debug 或Attach Debugger to Process启动调试。
说明 Debug和Attach Debugger的区别在于,Attach Debugger to Process可以先运行应用,然后再启动调试,或者直接启动设备上已安装的应用进行调试;而Debug是直接运行应用后立即启动调试。目前JS代码不支持Attach Debugger to Process调试。
如果需要设置断点调试,则需要选定要设置断点的有效代码行,在行号(比如:24行)的区域后,单击鼠标左键设置断点(如图示的红点)。 设置断点后,调试能够在正确的断点处中断,并高亮显示该行。
启动调试后,开发者可以通过调试器进行代码调试。调试器的功能说明如下表所示。
按钮名称快捷键功能Resume ProgramF9(Mac为Option+Command+R)当程序执行到断点时停止执行,点击此按钮程序继续执行。Step OverF8(Mac为F8)在单步调试时,直接前进到下一行(如果在函数中存在子函数时,不会进入子函数内单步执行,而是将整个子函数当作一步执行)。Step IntoF7(Mac为F7)在单步调试时,遇到子函数后,进入子函数并继续单步执行。Force Step IntoAlt+Shift+F7(Mac为Option+Shift+F7)在单步调试时,强制下一步。Step OutShift+F8(Mac为Shift+F8)在单步调试执行到子函数内时,点击Step Out会执行完子函数剩余部分,并跳出返回到上一层函数。StopCtrl+F2(Mac为Command+F2)停止调试任务。Run To CursorAlt+F9(Mac为Option+F9)断点执行到鼠标停留处。对于原子化服务,由于原子化服务在设备中没有桌面图标,可以通过如下方式在设备中运行/调试原子化服务。在服务中心露出的原子化服务:
通过DevEco Studio的运行/调试按钮,将原子化服务推送到真机设备上安装,安装完成后便可以启动原子化服务;同时在服务中心的最近使用中可以看到该原子化服务的卡片。通过hdc命令行工具,将原子化服务推送到真机设备上安装,安装完成后便可以启动原子化服务;同时在服务中心的最近使用中可以看到该原子化服务的卡片。在服务中心不露出的原子化服务:
通过DevEco Studio的运行/调试按钮,将原子化服务推送到真机设备上安装,安装完成后便可以启动原子化服务。通过hdc命令行工具,将原子化服务推送到真机设备上安装,安装完成后便可以启动原子化服务。设备控制类的原子化服务,可通过碰一碰、扫一扫等方式运行。断点管理在设置的程序断点红点处,点击鼠标右键,然后点击More或按快捷键Ctrl+Shift+F8(Mac为Shift+Command+F8),可以管理断点。代码类型断点管理JS(JavaScript)普通行断点Java普通行断点Exception(异常)断点C/C++普通行断点Exception(异常)断点Symbolic(符号)断点应用开发通用开发历程各类设备(手机/平板、智能穿戴、智慧屏等)通用的用户应用程序开发历程如下表所示。任务简介相关资源开发AbilityAbility是HarmonyOS应用程序的重要组成部分,分为FA(Feature Ability)和PA(Particle Ability)两种类型:FA支持Page Ability:Page模板是FA唯一支持的模板,用于提供与用户交互的能力。PA支持Service Ability和Data Ability:Service模板用于提供后台运行任务的能力;Data模板用于对外部提供统一的数据访问抽象。进行HarmonyOS应用开发,首先要了解Ability如何使用。Page AbilityService AbilityData Ability开发UIFA需要提供UI用于与用户进行交互,HarmonyOS提供了Java UI和JS UI两种UI框架:Java UI提供了细粒度的UI编程接口,使应用开发更加灵活;JS UI提供了相对高层的UI描述,使应用开发更加简单。说明针对轻量级智能穿戴(Lite Wearable),现阶段只使用JS语言进行应用开发,详见轻量级智能穿戴开发。Java UI框架Java API参考JS UI框架JS API参考开发业务功能媒体:视频、音频、图像、相机等功能的开发。安全:权限、生物特征识别等功能的开发。AI:图像超分、语音识别、码生成等功能的开发。网络连接:NFC、蓝牙、WLAN等功能的开发。设备管理:传感器、控制类小器件、位置等功能的开发。数据管理:数据库、分布式数据/文件服务、数据搜索等功能的开发。线程:线程管理、线程间通信等功能的开发。IDL:声明系统服务和Ability对外提供的服务接口,并生成相关代码。媒体开发指南安全开发指南AI开发指南网络与连接开发指南设备管理开发指南数据管理开发指南线程开发指南IDL接口使用指南原子化服务开发历程HarmonyOS除支持传统方式的需要安装的应用外,还支持提供特定功能的免安装的应用(即原子化服务),供用户在合适的场景、合适的设备上便捷使用。原子化服务相对于传统方式的需要安装的应用更加轻量,同时提供更丰富的入口、更精准的分发。原子化服务的详细介绍请参见“原子化服务”。其基本开发历程如下表所示。任务开发历程相关内容了解HarmonyOS了解HarmonyOS的系统定位、技术特性、应用开发的基本概念和基础知识,熟悉HarmonyOS应用开发通用流程。HarmonyOS概述开发基础知识快速入门设计原子化服务在设计阶段,需要满足原子化服务的设计规范,包括图标、卡片、分布式等规范。原子化服务设计掌握原子化服务约束了解原子化服务之间的调用管控机制。三方应用调用管控机制开发原子化服务基础体验了解原子化服务总体开发规则、如何开发服务卡片等基础体验。原子化服务总体开发要求服务卡片开发指南开发原子化服务分布式体验了解如何开发流转、分享等分布式体验。流转开发指南华为分享接入指南产品发布发布流程开发者完成HarmonyOS应用开发后,需要将应用打包成APP,用于发布到华为应用市场。发布应用的流程如下图所示。关于以上流程的详细介绍,请继续查阅本章节内容。准备签名文件对应用进行签名调试应用签名的方式包括如下两种:方式一:通过DevEco Studio自动化签名的方式对应用进行签名;方式二:通过从AppGallery Connect中申请调试证书和Profile文件后,再进行签名。通过DevEco Studio自动化签名的方式更加简单和高效,因此推荐开发者使用自动化签名。关于AppGallery Connect中申请调测证书和Profile的方式,可以参考申请发布证书和Profile文件流程。 连接真机设备,确保DevEco Studio与真机设备已连接。
进入File > Project Structure > Project > Signing Configs界面,点击“Sign In”按钮进行登录。
在AppGallery Connect中创建项目和应用。
登录AppGallery Connect,创建一个项目。
在项目中,点击 添加应用 按钮,创建一个应用。如果是非实名认证的用户,请点击“HAP Provision Profile管理”界面的 HarmonyOS应用 按钮。
选择平台:选择APP(HarmonyOS应用)。支持设备:选择调试的设备类型。应用包名:必须与config.json文件中的“bundleName”取值保持一致。应用名称、应用分类、默认语言请根据实际需要进行设置。
返回DevEco Studio的自动签名界面,点击Try Again,即可自动进行签名。自动生成签名所需的密钥(.p12)、数字证书(.cer)和Profile文件(.p7b)会存放到用户user目录下的.ohos\config目录下。 说明 如果是非实名认证用户,需要先接受“HUAWEI Developer Basic Service Agreement”协议。
设置完签名信息后,点击OK进行保存,然后可以在工程下的build.gradle中查看签名的配置信息。
申请发布证书和Profile文件通过生成的证书请求文件,向AppGallery Connect申请发布证书和Profile文件,详细操作请参考下表。步骤操作步骤操作说明操作指导1创建AGC项目申请发布证书前,需要登录AppGallery Connect后创建一个项目。说明如果在申请调试证书时已经创建了项目和应用,则可以跳过“创建AGC项目”和“创建HarmonyOS应用”步骤。创建您的AGC项目2创建HarmonyOS应用在AppGallery Connect项目中,创建一个HarmonyOS应用,用于发布证书和Profile文件申请。创建HarmonyOS应用3申请发布证书和Profile文件在AppGallery Connect中申请、下载发布证书和Profile文件。申请发布证书和Profile文件用于发布的证书和Profile文件后,请在DevEco Studio中进行签名,请参考配置签名信息。配置签名信息编译构建APP需要使用到制作的私钥(.p12)文件、在AppGallery Connect中申请的证书(.cer)文件和Profile(.p7b)文件。然后在DevEco Studio中对工程进行配置。在File > Project Structure > Project > Signing Configs窗口中,配置工程的签名信息。Store File:选择密钥库文件,文件后缀为.p12。Store Password:输入密钥库密码。Key Alias:输入密钥的别名信息。Key Password:输入密钥的密码。SignAlg:签名算法,固定为SHA256withECDSA。Profile File:选择申请的发布Profile文件,文件后缀为.p7b。Certpath File:选择申请的发布数字证书文件,文件后缀为.cer。设置完签名信息后,点击OK进行保存,然后使用DevEco Studio生成APP,请参考编译构建APP。编译构建APP打包APP时,DevEco Studio会将工程目录下的所有HAP模块打包到APP中,因此,如果工程目录中存在不需要打包到APP的HAP模块,请手动删除后再进行编译构建生成APP。 点击Build > Build APP(s)/Hap(s) > Build APP(s),等待编译构建完成已签名的APP。
编译构建完成后,可以在build > outputs > app > release目录下,获取带签名的APP。
发布APP到华为应用市场将HarmonyOS应用打包成APP后,通过AppGallery Connect将HarmonyOS应用分发到不同的设备上。您可以根据发布HarmonyOS应用指导将APP上架到华为应用市场。}

我要回帖

更多关于 鸿蒙开发有必要学吗 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信