网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 HarmonyOS应用程序开发与实战(Java版高等学校计算机专业系列教材)
分类 科学技术-工业科技-电子通讯
作者
出版社 清华大学出版社
下载
简介
内容推荐
本书系统全面地讲解在鸿蒙操作系统(HarmonyOS)下基于Java的应用程序开发的基础理论知识,通过丰富、详细的案例向读者呈现HarmonyOS应用程序的开发流程。全书共13章。第1章对HarmonyOS的概念、技术特性以及技术架构进行了综合介绍;第2章以一个简单的Hello World工程为例,介绍HarmonyOS应用程序的开发环境、开发工具以及应用的调试过程,并对HarmonyOS的工程结构进行讲解,使读者能更好地切入和理解后续章节的学习内容;第3章详细介绍HarmonyOS应用程序的一大核心——Page Ability,其是完成后续章节学习的基础;第4~6章分别对布局、组件以及对话框进行系统介绍;第7章介绍HarmonyOS应用程序中多媒体的开发过程;第8、9章介绍HarmonyOS应用程序中数据管理和文件管理的部分;第10章介绍HarmonyOS应用程序中后台任务如何通过Service Ability运行;第11~13章分别介绍三个完整的案例(工大通、定点巡检、多媒体播放器),不仅涉及基本的布局、组件、数据管理等基础知识,还涉及了对设备硬件调用等进阶知识,读者可以在这三个案例的基础上进行二次开发,使其功能更加丰富,更具有实用性和应用性。
本书主要面向鸿蒙应用的入门开发人员,也可作为高校教材或培训机构的参考用书。
目录
第1章 HarmonyOS简介/
1.1 HarmonyOS的前世今生
1.1.1 HarmonyOS概述
1.1.2 HarmonyOS全场景战略
1.2 HarmonyOS的技术特性
1.2.1 硬件互助,资源共享
1.2.2 一次开发,多端部署
1.2.3 统一操作系统,弹性部署
1.3 HarmonyOS的技术架构
1.3.1 内核层
1.3.2 系统服务层
1.3.3 框架层
1.3.4 应用层
第2章 Hello World/
2.1 HarmonyOS应用程序的开发环境
2.2 运行 Hello World
2.2.1 创建HelloWorld项目工程
2.2.2 启动模拟器
2.2.3 运行HelloWorld工程
2.2.4 分析HelloWord工程
2.3 HarmonyOS应用程序运行调试
2.3.1 设置断点
2.3.2 输出日志
2.4 HarmonyOS应用程序设备调试
2.4.1 生成签名文件
2.4.2 签名HarmonyOS App
2.4.3 无线真机调试
第3章 窗口/
3.1Page Ability概述27HarmonyOS应用程序开发与实战(Java版)目录3.2 Page Ability的基本用法
3.2.1 手动创建Page Ability类
3.2.2 在config.json文件中注册Page Ability
3.2.3 创建布局文件
3.2.4 静态装载布局文件
3.2.5 显示Page Ability
3.2.6 销毁Page Ability
3.3 Page Ability之间的交互
3.3.1 Intent的基本概念
3.3.2 显式使用Intent
3.3.3 隐式使用Intent
3.3.4 Page Ability之间的通信
3.4 Page Ability的启动类型
3.5 Page Ability的跨设备迁移
3.5.1 跨设备迁移前的准备工作
3.5.2 获取设备列表
3.5.3 根据设备ID调用Page Ability
3.6 AbilitySlice间导航
3.6.1 AbilitySlice的基础用法
3.6.2 同一Page间导航
3.6.3 不同Page间导航
3.7 生命周期
3.7.1 Page Ability的生命周期
3.7.2 AbilitySlice的生命周期
第4章 布局/
4.1 Java UI框架概述
4.2 方向布局
4.2.1 支持的XML属性
4.2.2 排列方式
4.2.3 对齐方式
4.2.4 权重
4.3 依赖布局
4.3.1 支持的XML属性
4.3.2 排列方式
4.4 表格布局
4.4.1 支持的XML属性
4.4.2 设置行列数
4.4.3 设置布局排列方向
4.4.4 设置对齐方式
4.5 栈布局
4.5.1 支持的XML属性
4.5.2 使用默认布局添加组件
4.5.3 使用相对位置添加组件
4.6 位置布局
4.7 自适应盒子布局
4.7.1 常用方法
4.7.2 场景示例
第5章 UI组件/
5.1 展示组件
5.1.1 文本组件
5.1.2 图像组件
5.1.3 进度条组件
5.1.4 圆形进度条
5.1.5 时钟组件
5.2 交互组件
5.2.1 按钮组件
5.2.2 切换按钮组件
5.2.3 文本编辑组件
5.2.4 单选组件
5.2.5 多选组件
5.2.6 开关组件
5.3 高级组件
5.3.1 列表组件
5.3.2 标签列表组件
5.3.3 滑动选择器组件
5.3.4 日期选择器组件
5.3.5 时间选择器组件
5.3.6 滚动视图组件
第6章 对话框/
6.1 普通对话框
6.1.1 显示一个简单的对话框
6.1.2 为对话框添加“关闭”按钮
6.1.3 为对话框添加多个按钮
6.1.4 调整按钮的尺寸
6.1.5 自动关闭对话框
6.2 定制对话框
6.3 Toast 信息框
6.4 Popup 对话框
第7章 多媒体/
7.1 音频
7.1.1 准备本地音频文件
7.1.2 播放本地音频文件
7.1.3 暂停和继续播放音频
7.1.4 停止播放音频
7.1.5 播放在线音频文件
7.1.6 播放音频的完整案例
7.2 视频
7.3 相机
7.3.1 拍照API的使用方式
7.3.2 使用相机需要申请的权限
7.3.3 拍照的完整案例
第8章 数据管理/
8.1 轻量级数据存储开发
8.1.1 Preferences类的基本用法
8.1.2 响应文件写入动作
8.1.3 轻量级存储的移动和删除
8.2 关系数据库开发
8.2.1 使用SQL语句操作SQLite数据库
8.2.2 使用谓词操作SQLite数据库
8.2.3 使用事务
8.3 对象关系映射数据库
8.4 分布式文件
8.5 分布式数据
8.5.1 同步数据
8.5.2 用谓词查询分布式数据
第9章 Data Ability/
9.1 Data Ability概述
9.2 Data Ability中的URI
9.3 创建Data Ability
9.3.1 手动创建Data Ability
9.3.2 自动创建Data Ability
9.3.3 创建DataAbilityHelper
9.4 Data Ability访问数据库
9.5 Data Ability访问文件
9.6 Data Ability跨设备访问
第10章 Service Ability/
10.1 Service Ability概述
10.2 Service Ability的生命周期
10.2.1 启动状态的Service Ability
10.2.2 连接状态的Service Ability
10.3 Service Ability的创建
10.3.1 创建Service
序言
前言
HarmonyOS是华为自2012年开发的一款可兼容
Android应用程序的跨平台分布式操作系统。自从华为
对外流出鸿蒙操作系统(HarmonyOS)相关的设计概念
以来,HarmonyOS就引起了广泛关注,它被认为是国产
新一代操作系统的希望,是一款“面向未来”“面向万
物互联”的全场景分布式操作系统。2019年8月,华为
在开发者大会上正式发布HarmonyOS,并将该系统开源
,供广大开发者学习。2020年9月,华为在开发者大会
上发布了HarmonyOS 2.0,推出应用开发者Beta版本,
并在同年12月推出了手机开发者Beta版。2021年10月,
华为正式发布HarmonyOS 3.0 Beta版,这意味着
HarmonyOS整体开发环境和SDK支持也逐步趋于成熟。
HarmonyOS的产生体现出“坚持守正创新”的二十大精
神,能够培养学生勇于进行理论探索和创新的能力。
HarmonyOS与Android和iOS一样,是独立的操作系统,
都支持多种硬件设备,但搭载HarmonyOS的每个设备都
不是孤立的,在系统层多终端融为一体,成为“超级终
端”,终端之间能力、资源可以互助共享。这是
HarmonyOS独有的特性,即华为提出的“万物互联”的
概念。随着5G时代以及以后的6G时代、7G时代的来临,
更多的硬件设备将得到网络支持,而有了HarmonyOS,
这些设备不再是独立的个体,而是物联网的一部分,这
些物联网设备所产生的数据将在全球物联网大脑中流动
,其产生的力量将难以置信。本书针对HarmonyOS SDK
4版本,对HarmonyOS的应用开发基础进行了梳理和介绍
,并搭配对应案例进行讲解,帮助读者快速掌握。本书
最后提供了三个完整的HarmonyOS应用程序的开发案例
,供读者学习。全书共13章。第1章对HarmonyOS的概念
、技术特性以及技术架构进行了综合介绍,让读者对
HarmonyOS有一个全面的了解。第2章以一个简单的
Hello World工程为例,介绍HarmonyOS应用程序的开
发环境、开发工具以及应用的调试过程,并对
HarmonyOS的工程结构进行讲解,使读者能更好地切入
和理解后续章节学习内容。第3章详细介绍HarmonyOS应
用程序的一大核心——Page Ability,其是完成后续章
节学习的基础,使读者更好地学习后续内容。第4~6章
分别对布局、组件以及对话框进行系统介绍。第7章介
绍HarmonyOS应用程序中多媒体的开发过程。第8、9章
介绍HarmonyOS应用程序中的数据管理和文件管理的部
分。第10章介绍HarmonyOS应用程序中后台任务如何通
过Service Ability运行。第11~13章分别介绍三个完
整的案例(工大通、定点巡检、多媒体播放器),不仅
涉及基本的布局、组件、数据管理等基础知识,还涉及
了对设备硬件调用等进阶开发知识,读者可以在这三个
案例的基础上进行二次开发,使其功能更加丰富。本书
非常适合初学者入门,在内容讲解上,针对代码部分也
采用循序渐进的方式进行讲解,保证读者能够根据提供
的代码逐步掌握书中的知识点,并且提供直观的可视化
效果作为参考。在本书编写时,HarmonyOS的应用开发
能力和系统还未完全成熟,处于快速更新迭代的状态,
因此本书内容的广度和深度有限,仅涉及HarmonyOS应
用开发中的一些基础核心功能。另外,在编写过程中,
由于HarmonyOS的多次更新迭代,本书的代码也经历了
多次测试和更改,因此读者在学习过程中也难免会碰到
一些问题,还望读者见谅,也欢迎随时联系我们反馈问
题。在此,也要感谢李强、刑伟伟、齐楚锋、刘大勇、
房立国、王能森、杨望旭、刘旭、何川、张雨辰、章锴
杰、林朗、陆琦超、周倩、王鸣飞、袁知恒等在书稿的
编写、校对、核验以及本书案例代码的编写、调试等方
面做出的贡献。
编者2023年3月
导语
系统全面地讲解在鸿蒙系统(HarmonyOS)下基于Java的应用程序开发的基础理论知识,通过丰富、详细的案例向读者呈现鸿蒙系统应用程序的开发流程。
精彩页
第3 章
窗 口
Ability是应用所具备能力的抽象,也是应用程序的重要组成部分,是Harmony应用程
序的一大核心。一个应用可以包含多个Ability,而Ability 又可以分为FA(Feature
Ability)和PA(ParticleAbility)两种类型,FA 仅支持PageAbility,它对用户是可见的,承
载了一个业务可视化界面,即用户可通过FA 与应用程序进行交互,PA 支持DataAbility
(第9章)和ServiceAbility(第10章),它在后台运行,对用户是不可见的,PA 无法提供与
用户交互的能力。本章主要对PageAbility进行讨论。
通过阅读本章,读者可以掌握:
如何使用PageAbility。
如何在PageAbility之间进行交互。
如何进行跨设备迁移PageAbility。
如何使用AbilitySlice。
PageAbility与AbilitySlice的生命周期。
3.1 PageAbility概述
PageAbility是FA 唯一支持的模板,它本质上是一个窗口,用于提供与用户交互的能
力,类似于Android中的Activity。另外,HarmonyOS提供了AbilitySlice,AbilitySlice是
指应用的单个页面控制逻辑的总和,相当于页面内的子窗口,类似于导航窗口,其功能与
PageAbility相同,在切换时可以在同一个PageAbility内完成,也可以跳转至不同的Page
Ability。PageAbility之间的切换相当于Web网页之间的切换,而AbilitySlice之间的切换
相当于在一个Web页面下不同导航窗口之间的切换。
图3-1 PageAbility与AbilitySlice
的关系
PageAbility可以使用一个或多个AbilitySlice,也可以不使用。在创建HarmonyOS工程
时,包含了一个默认的AbilitySlice(MainAbilitySlice.
java)。当在一个PageAbility中使用多个AbilitySlice
时,这些AbilitySlice所提供的功能之间应该具有高度
的相关性,换言之,页面提供的功能之间有高度相关性
时,应该在一个PageAbility下使用两个AbilitySlice,
而不必使用两个Page Ability,以减少冗余。Page
Ability和AbilitySlice的关系如图3-1所示。
为了提高开发者的开发效率,使用DevEcoStudio 创建HarmonyOS工程时,IDE 提供了一些Ability模
28 HarmonyOS 应用程序开发与实战(Java 版)
板供开发者使用,如图3-2所示,读者可以使用这些Ability模板快速生成一个HarmonyOS
工程的框架,相当于一个简单的HelloWorld工程。
图3-2 Ability模板
3.2 PageAbility的基本用法
为了提高开发效率,DevEcoStudio也为开发人员提供了自动创建PageAbility的功
能,在创建过程中会自动创建Page类型的Ability类,同时创建一个AbilitySlice类以及布
局文件,并自动向config.json文件中添加PageAbility的配置信息,这些都是开发工具自动
完成的。为了使读者能够更好地理解和使用PageAbility,本节将介绍如何手动创建Page
Ability、布局文件,以及如何装载布局文件,并在config.json中配置一个PageAbility。
3.2.1 手动创建Page Ability 类
PageAbility是一个普通的Java类,其必须继承Ability类,该类属于ohos.aafwk.ability
包,下面给出MyFirstAbility类的创建代码:
package com.example.createpageability;
import ohos.aafwk.ability.Ability;
public class MyFirstAbility extends Ability {
}
3.2.2 在config.json 文件中注册Page Ability
在HarmonyOSApp中,所有Ability在使用前必须在config.json文件中的abilities配
第3 章窗口 29
置项配置。abilities是一个对象数组,每一个对象表示一个Ability,包括PageAbility、Data
Ability和ServiceAbility。MyFirstAbility的配置代码如下:
{
"skills": [
{
"actions": [
"com.example.myfirstability"
]
}
],
"orientation": "unspecified",
"formsEnabled": false,
"name": "com.example.createpageability.MyFirstAbility",
"icon": "$media:icon",
"description": "$string:myfirstability_description", 用Intent.getStringParam()方法就能获得传递过来的数据,代码如下:
Intent myintent = getIntent();
String data = myintent.getStringParam("data");
第二种通信方式是双向的,从PageAbility1传递数据并跳转到PageAbility2时,需要
PageAbility2返回数据给PageAbility1。此时,需要使用startAbilityForResult()方法。
当使用该方法跳转到PageAbility2 时,由PageAbility2 返回到PageAbility1 后,Page
Ability1会自动调用onAbilityResult()方法,因此,需要提前在PageAbility1中重写该方
法用于接收从PageAbility2传递过来的数据,该方法的原型:
protected void onAbilityResult (int requestCode, int resultCode,
Intent resultData);
38 HarmonyOS 应用程序
随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/3/24 16:50:10