写点什么

运动健康 app(一)

作者:鸿蒙之旅
  • 2023-05-07
    广东
  • 本文字数:1689 字

    阅读完需:约 6 分钟

本文可能没有 CodeLabs 的做的好,更重要是通过这一个应用,带大家来了解关于 Stage 模型下的 ArkTS 的开发。我们从创建项目开始。


首先我们需要安装 IDE,IDE 的下载地址是:


https://developer.harmonyos.com/cn/develop/deveco-studio#download


下载最新的 3.1.Beta2 版本。完成安装之后,就可以今天的内容了。

创建项目

如下所示:



选择第一个模版之后,点击 next



然后填写应用名称,以及保存的位置就好,其他的保持默认。



创建之后,目录结构是这样的。这里给出简单的解释



  • AppStore > app.json5:应用的全局配置信息。

  • entry:HarmonyOS 工程模块,编译构建生成一个 HAP 包。

  • oh_modules:用于存放三方库依赖信息。

  • src > main > ets:用于存放 ArkTS 源码。

  • src > main > ets > entryability:应用/服务的入口。

  • src > main > ets > pages:应用/服务包含的页面。

  • src > main > resources:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。

  • src > main > module.json5:Stage 模型模块配置文件。主要包含 HAP 包的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。

  • build-profile.json5:当前的模块信息、编译信息配置项,包括 buildOption、targets 配置等。其中 targets 中可配置当前运行环境,默认为 HarmonyOS。

  • hvigorfile.ts:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。

  • build-profile.json5:应用级配置信息,包括签名、产品配置等。

  • hvigorfile.ts:应用级编译构建任务脚本。


因为我们要做的是一款运动健康的 APP,这里面肯定是有运动的元素在内,


我们就可以先找几个图标,关于图标,我们可以在这儿获取。https://www.iconfont.cn/


这里提供了各式各样的图标。



这里我们先做几个工具类,方便后面复用


ShowToast


import prompt from '@ohos.promptAction'class ShowToast {  private longToastTime: number = 3000  private shortToastTime: number = 1000  showToast(message: ResourceStr, duration: number) {    prompt.showToast({ message: message, duration: duration })  }  shortToast(message: ResourceStr) {    this.showToast(message, this.shortToastTime)  }  longToast(message: ResourceStr) {    this.showToast(message, this.longToastTime)  }
}
export default new ShowToast()
复制代码


TitleBar



import router from '@ohos.router'
// Page title bar@Componentexport struct TitleBar { private title: Resource
build() { Column() { Row() { Image($r('app.media.ic_back')) .width(20) .height(20) .margin({ left: 26 }) .objectFit(ImageFit.Contain) .onClick(() => { router.back() }).id('backBtn') Text(this.title) .fontSize(20) .layoutWeight(1) .margin({ left: 16 }) .align(Alignment.Start) Blank() } .height(56) .width('100%')
Divider() .height(1) .color($r('app.color.bottom_title_divider')) } }}
复制代码


Logger


diimport hilog from '@ohos.hilog';const LOGGER_PREFIX: string = 'Healthy';class Logger {  private domain: number;  private prefix: string;  private format: string = '%{public}s, %{public}s';  constructor(prefix: string = '', domain: number = 0xFF00) {    this.prefix = prefix;    this.domain = domain;  }  debug(...args: any[]): void {    hilog.debug(this.domain, this.prefix, this.format, args);  }  info(...args: any[]): void {    hilog.info(this.domain, this.prefix, this.format, args);  }
warn(...args: any[]): void { hilog.warn(this.domain, this.prefix, this.format, args); }
error(...args: any[]): void { hilog.error(this.domain, this.prefix, this.format, args); }}
export default new Logger(LOGGER_PREFIX, 0xFF02);
复制代码


发布于: 刚刚阅读数: 4
用户头像

鸿蒙之旅

关注

还未添加个人签名 2022-10-26 加入

还未添加个人简介

评论

发布
暂无评论
运动健康app(一)_OpenHarmony_鸿蒙之旅_InfoQ写作社区