从零开始开发纯血鸿蒙应用之工程初始化

从零开始开发纯血鸿蒙应用

  • 背景
  • 一、选定应用类型
    • 1、自身需要与生态欠缺
    • 2、搭建工程

背景

目前,由于纯血鸿蒙切换到单框架的结构,很多还没来得及鸿蒙化的各种app,都无法在纯血鸿蒙系统上进行运行,或者功能还不完善。为了让大家能够自行根据需要,进行工具开发并部署到自己的手机上,因此纂写本系列博文,供大家进行参考,也希望因此能够为纯血鸿蒙生态添砖加瓦。

一、选定应用类型

1、自身需要与生态欠缺

作为一个开发者,我经常会在手机和电脑之间,通过聊天软件如微信登,进行代码文件的传递。每种语言对应的代码文件,都有着专门的文件后缀,而这些后缀通常不被手机上的大多数应用所识别,比如Java文件发到手机上,是无法进行浏览和查看的,而手机上也不能像电脑那样,强制将一种文件以后缀名不同的方式打开,因此,会经常出现这种界面:
在这里插入图片描述

如果,恰巧我身边就没有电脑可以用,那将对此无可奈何。
据我了解,当前纯血鸿蒙的应用市场上,也没有一款针对通用纯文本文件的编辑器应用,大多数是docx等富文本类型的编辑器。
既然没有现成的可用,于是我就决定自己开发一个给自己用,当然了,也考虑过上架,但是上架流程稍显麻烦我便放弃了。

2、搭建工程

到目前为止,DevEco Studio 是纯血鸿蒙应用的唯一开发平台,因此,工程创建也理所当然的在该 IDE 中进行:
在这里插入图片描述
工程目录结构整体如上,为了形成组件或功能的高可复用性,我使用 static Library 创建了多个lib模块,供作为app启动模块的 Entry 模块进行使用,这些lib模块的职能如下:

  • lib_comps:UI 组件模块,用于归纳会多处使用的自定义组件和自定义样式
  • lib_constant:用于收录工程里使用到的各种常量
  • lib_log:顾名思义,是日志模块,本工程不直接使用 hilog,而是基于官网提供的日志Demo进行二次改造,以便能够轻松地在app内导出日志
  • lib_util:收录纯逻辑的工具类或工具方法
  • lib_resources:资源模块,用于收录本工程用到的各种资源,如string资源、icon资源等
    在这里插入图片描述
    Entry 模块下的目录结构如上,需要关注的是 src/main/etssrc/main/resources/base/profile。profile 目录下的 main_page.josn,会记录所有的app页面的路由:
{
  "src": [
    "pages/Index",
    "pages/EditPage",
    "pages/ViewFilePage",
    "pages/ViewOutsideFile",
    "pages/ImportFilePage",
    "pages/AboutAppPage"
    ......
  ]
}

而 ets 目录下的各个子目录的职能如下:

  • content:用于收录各个页面对应的内容组件,比如 index 页面的 MainPageContent
  • entryability:这是工程创建时自动创建的目录,里面存放了 Entryability 类的源码,该 Entryability 类是启动app时最先调用的。
  • entrybackupability:这是进行数据备份用的,暂时可以忽略不管
  • model:用于存放工程里用到的各种数据模型,比如用于在路由跳转动作中进行数据传递的模型
  • util:存放只在 entry 模块中进行使用的工具类或工具方法

其他文件或目录,会在项目实现过程中由IDE自动维护。为了避免代码丢失,我已经将对应工程源码托管到了 gitee 上,对应的仓库地址为:TxtEdit仓库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御承扬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值