README.md
1# CalendarData
2
3## Introduction
4
5CalendarData is a preset application in OpenHarmony. It allows users to add, delete, modify, and query calendars.
6
7## Directory Structure
8```
9├─AppScope
10│ │
11│ └─resources # Resource files
12├─common
13│ │
14│ └─src
15│ └─main
16│ └─ets # Common methods
17├─datamanager
18│ └─src
19│ └─main
20│ └─ets # Data manager
21├─dataprovider
22│ └─src
23│ └─main
24│ └─ets # Data manager proxy
25├─datastructure
26│ └─src
27│ └─main
28│ └─ets # Data structure
29├─entry
30│ └─src
31│ └─main # Application entry
32├─rrule
33│ └─src
34│ └─main
35│ └─ets # Recurrence rule
36└─signature # Certificate file
37```
38
39### Architecture
40
41![](./figures/architecture.png)
42
43As a built-in basic application, Calendar implements basic user operations such as querying daily and monthly views and creating and querying calendars. The Calendar APIs provide SQL-free, object-based data read and write capabilities. CalendarData manages calendars, reminders, and data.
44
45## How to Use
46
47### Building based on IDE
48
49Open a project in DevEco Studio and choose **Build > Build Haps(s)/APP(s) > Build Hap(s)**.
50
51![](./figures/build_haps.png)
52
53After the build is complete, a HAP file is generated in **\build\outputs** in the project directory. (If no signature is configured, an unsigned HAP file is generated.)
54
55![](./figures/build_output_dir_release.png)
56
57Run the **hdc_std install "*hap package address*"** command to install the compiled HAP file.
58
59![](./figures/calendar_install.png)
60
61### Building based on OpenHarmony version
62
63In the root directory of the OpenHarmony source code, run the following command to build the CalendarData separately:
64
65```
66./build.sh --product-name rk3568 --ccache --build-target calendar_data
67```
68
69> **NOTE**
70>
71> --**product-name** specifies the product name, for example, **rk3568**.
72>
73> --**ccache** specifies the cache function used during the compilation.
74>
75> --**build-target** specifies the component to build.
76
77## Constraints
78- Development environments
79 - DevEco Studio for OpenHarmony: version later than 3.1.1.101
80
81 - OpenHarmony SDK: API version 10
82
83 For details about the initial DevEco Studio configuration, see the DevEco Studio usage document.
84
85- Programming language
86
87 ArkTS
88
89- Limitations
90
91 This application can only be run on standard-system devices.
92
README_zh.md
1# 日历存储应用
2
3## 项目介绍
4
5日历存储应用是OpenHarmony中预置的应用,提供日程的增删改查功能。
6
7## 目录结构
8```
9├─AppScope
10│ │
11│ └─resources # 资源文件
12├─common
13│ │
14│ └─src
15│ └─main
16│ └─ets # 公共方法
17├─datamanager
18│ └─src
19│ └─main
20│ └─ets # 数据处理
21├─dataprovider
22│ └─src
23│ └─main
24│ └─ets # 数据处理代理层
25├─datastructure
26│ └─src
27│ └─main
28│ └─ets # 数据结构
29├─entry
30│ └─src
31│ └─main # 程序入口
32├─rrule
33│ └─src
34│ └─main
35│ └─ets # 重复规则
36└─signature # 证书文件目录
37```
38
39### 整体架构
40
41![](./figures/architecture.png)
42
43Calendar作为内建基础应用,实现日月视图查看、日程创建查看等与用户交互相关的基础操作;Calendar API提供免SQL的对象化数据读写访问能力;CalendarData负责日程管理、提醒管理以及数据管理等功能。
44
45## 使用说明
46
47### 基于IDE构建
48
49在DevEco Studio打开项目工程,选择Build → Build Haps(s)/APP(s) → Build Hap(s)。
50
51![](./figures/build_haps.png)
52
53编译完成后,hap包会生成在工程目录下的 `\build\outputs`路径下。(如果没有配置签名,则只会生成未签名的hap包)
54
55![](./figures/build_output_dir_release.png)
56
57使用hdc_std install "hap包地址" 命令进行安装编译后的hap包。
58
59![](./figures/calendar_install.png)
60
61### 基于OpenHarmony版本构建
62
63在OpenHarmony源码目录下,调用一下命令,单独编译calendar_data
64
65```
66./build.sh --product-name rk3568 --ccache --build-target calendar_data
67```
68> **说明:**
69--product-name:产品名称,例如Hi3516DV300、rk3568等。
70--ccache:编译时使用缓存功能。
71--build-target: 编译的部件名称。
72
73## 约束
74- 开发环境
75 - **DevEco Studio for OpenHarmony**: 版本号大于3.1.1.101,下载安装OpenHarmony SDK API Version 10。(初始的IDE配置可以参考IDE的使用文档)
76- 语言版本
77 - ArkTS
78- 限制
79 - 本示例仅支持标准系统上运行
80
81
82
83