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