赞
踩
鸿蒙OS开发包括鸿蒙应用开发(手机,PC,平板等的app开发)和鸿蒙设备开发(硬件设备的开发);对于鸿蒙的应用开发入门,我们要学习的基础知识包括有开发的环境搭建、启动的流程,页面的生命周期、跳转,常见的布局、组件、事件以及高级组件,Ability,AbilitySlice,无界面的Ability,HiLog等等。那么到了应用开发进阶阶段,我们需要掌握的基本知识包括有多线程、数据库、数据安全、服务器交互、json、http协议、(视频/声音)采集和处理、跨设备的调用等等。
接下来,就让我们一起开始HarmonyOS 2.0应用开发的学习吧!
首先我们要在官网注册账号并且实名认证,官网地址:www.harmonyos.com,在官网右上角点击注册,若已有华为账号可以直接登录的哦!
注意,在实名认证的时候,建议选择下图中的“是”哦!不然,将来若是需要用到下面的功能时,就得重新实名认证,会比较麻烦!
我们都知道做开发,编程语言是必不可少的,鸿蒙应用开发,我们可以使用的编程语言有Java、JavaScript、C/C++、还有华为自主研发的目前暂时还不可用的编程语言“仓颉”;而鸿蒙硬件开发最适合的语言还是C/C++。
那么我们还是要在官网的“开发”栏中下载开发工具IDE
小北选择的是下图的版本
下面就开始安装了,注意路径不能有中文字符哦!一直Next即可,安装很简单。
安装好之后,我们需要同意协议
之后,我们还要下载开发所用的SDK,路径可以自己设置
安装完成之后,我们可以对IDE进行一些个性化的设置,例如修改自己喜欢的主题,自动导包,设置字体大小,注释的样式等等。
创建项目
这样一个项目就已经创建好了,相信大家看见这个UI会有IDEA非常熟悉的感觉,你的感觉没有错,IDE就是模仿IDEA来设计的,接下来我们可以对开发工具的个性化设置了,点击File->settings…
1.设置主题
2.设置字体大小
3.设置注释样式
4.设置自动导包
会跳转到浏览器中登录:
注意; 模拟器并不需要我们去下载的哦,它是在华为的服务器中的,这样我们就可以节省了很多资源,并且可以直接使用,还有一点就是模拟器的每次使用是有时间限制的哦(1个小时),当时间到了,我们还需要使用,则可以再次打开使用即可。
每一个Ability都会被单独打包成.hap
的文件,也就是一个Hap包,而将所有的Hap包,打包整理到一起就成为了一个应用App
在这个配置文件中存放的是跟应用App相关的所有信息,包括项目的配置信息(app,例如项目的版本号,开发商的信息等等);应用在手机等各种设备上的配置信息(deviceConfig,例如应用使用时的进程名称、是否联网使用流量,是否支持后台静默运行等等);代码中的配置信息(module,例如Ability的配置)
下面我们来详细分析下config.json配置文件的部分代码块
//整个项目的配置信息
"app": {
"bundleName": "com.example.myapplication",
"vendor": "example",
"version": {
"code": 1000000,
"name": "1.0.0"
}
}
//解释代码块:
bundleName :包名
vendor :应用的开发厂商的信息
version :版本号,code只能公司内部开发人员可见,name使用者可见
//应用在手机等各种设备上的配置信息,也就是应用权限
"deviceConfig": {}
//花括号为空就是什么权限都没给,
//代码中的配置信息 "module": { "package": "com.example.myapplication", "name": ".MyApplication", "mainAbility": "com.example.myapplication.MainAbility", "deviceType": [ "phone" ], "distro": { "deliveryWithInstall": true, "moduleName": "entry", "moduleType": "entry", "installationFree": false }, "abilities": [ { "skills": [ { "entities": [ "entity.system.home" ], "actions": [ "action.system.home" ] } ], "orientation": "unspecified", "name": "com.example.myapplication.MainAbility", "icon": "$media:icon", "description": "$string:mainability_description", "label": "$string:entry_MainAbility", "type": "page", "launchType": "standard" } ] } //解释代码块: package:包名 name:当前hap包的名字 mainAbility ;为hap包的入口ability的名称 deviceType :表示项目可以运行在哪些设备上 distro :为hap包的一些描述信息 deliveryWithInstall:表示当前的hap包是否支持随应用安装 moduleName :当前hap包的名称 moduleType :当前hap包的类型,entry表示当前hap包是一个主要的模块,可以独立的安装 installationFree : 是否支持无障碍安装 abilities :为ability的配置信息
当我们运行程序时,首先会解析config.json文件,并初始化,随后会再获取入口Ability的完全类名,然后会根据这个全类名来找到Ability并且运行它,然后还会接着继续运行Ability的子页面,最终会加载xml文件展示出要显示的内容。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。