1# app_samples部件<a name="ZH-CN_TOPIC_0000001115464207"></a> 2 3## 简介<a name="section1470103520301"></a> 4 5为帮助开发者快速熟悉OpenHarmony SDK所提供的API和应用开发流程,我们提供了一系列的应用示例,即Sample。每一个应用示例都是一个独立的DevEco Studio工程项目,开发者可以将工程导入到DevEco Studio开发工具,通过浏览代码、编译工程、安装和运行应用示例来了解应用示例中涉及API的使用方法。 6 7**编码规范** 8 9<!-- 10 11【示例贡献温馨提示】感谢您关注OpenHarmony,如果您希望提交代码样例/示例/Demo,请参考知识体系的[《如何共建开发样例》](https://gitee.com/openharmony-sig/knowledge/blob/master/docs/co-construct_demos/README_zh.md),首先提交到SIG(兴趣组)仓,知识体系SIG仓中的提交也是有效贡献。再次感谢您的关注!) 12 13--> 14 15<table width="990" border="0" cellpadding="0" cellspacing="0" style='border-collapse:collapse;table-layout:fixed;'> 16 <tr height="18" style='height:13.50pt;'> 17 <td width="330"><a href="CodeCommitChecklist.md#社区共建Sample合入要求" target="_blank">社区共建Sample合入要求</a></td> 18 <td width="330"><a href="CodeCommitChecklist.md#代码规范" target="_blank">代码规范</a></td> 19 <td width="330"><a href="CodeCommitChecklist.md#readme编写规范" target="_blank">README编写规范</a></td> 20 </tr> 21 <tr height="18" style='height:13.50pt;'> 22 <td width="330"><a href="CodeCommitChecklist.md#ui自动化用例编写规范" target="_blank">UI自动化用例编写规范</a></td> 23 <td width="330"><a href="CodeCommitChecklist.md#工程结构规范" target="_blank">工程结构规范</a></td> 24 <td width="330"><a href="CodeCommitChecklist.md#pr提交格式规范" target="_blank">PR提交格式规范</a></td> 25 </tr> 26</table> 27 28**架构组成** 29 30<table width="990" border="0" cellpadding="0" cellspacing="0" style='border-collapse:collapse;table-layout:fixed;'> 31 <tr height="18" style='height:13.50pt;'> 32 <td width="140" x:str><strong>一级分类</strong></td> 33 <td width="170" x:str><strong>子分类</strong></td> 34 <td width="680" colspan="4" align="center" x:str><strong>应用示例</strong></td> 35 </tr> 36 <tr height="18" style='height:13.50pt;'> 37 <td width="140" align="center" rowspan="2" style='height:27.00pt' x:str><strong>UI</strong></td> 38 <td width="170" x:str><strong>声明式开发范式</strong></td> 39 <td width="170" x:str><a href="code/UI/ArkTsComponentClollection/ComponentCollection">ArkTS组件集</a></td> 40 <td width="170" x:str><a href="code/UI/ArkTsComponentClollection/MediaQuery">媒体查询</a></td> 41 <td width="170"></td> 42 <td width="170"></td> 43 </tr> 44 <tr height="18" style='height:13.50pt;'> 45 <td x:str><strong>类Web开发范式</strong></td> 46 <td x:str><a href="code/UI/JsComponentClollection/JsComponentCollection">Js组件集</a></td> 47 <td ></td> 48 <td ></td> 49 <td ></td> 50 </tr> 51 <tr height="18" style='height:13.50pt;'> 52 <td height="270" align="center" rowspan="19" style='height:202.50pt' x:str><strong>基础特性</strong></td> 53 <td x:str><strong>应用模型</strong></td> 54 <td x:str><a href="code/BasicFeature/ApplicationModels/StageModel">Stage模型</a></td> 55 <td x:str><a href="code/BasicFeature/ApplicationModels/AbilityStartMode">Ability的启动方式</a></td> 56 <td x:str><a href="code/BasicFeature/ApplicationModels/CustomShare">使用want分享数据</a></td> 57 <td ></td> 58 </tr> 59 <tr height="18" style='height:13.50pt;'> 60 <td x:str><strong>通知</strong></td> 61 <td x:str><a href="code/BasicFeature/Notification/CustomEmitter">自定义Emitter</a></td> 62 <td x:str><a href="code/BasicFeature/Notification/CustomNotification">自定义通知</a></td> 63 <td x:str><a href="code/BasicFeature/Notification/CustomCommonEvent">公共事件的订阅和发布</a></td> 64 <td ></td> 65 </tr> 66 <tr height="18" style='height:13.50pt;'> 67 <td x:str><strong>窗口管理</strong></td> 68 <td x:str><a href="code/BasicFeature/WindowManagement/WindowManage">窗口管理</a></td> 69 <td ></td> 70 <td ></td> 71 <td ></td> 72 </tr> 73 <tr height="18" style='height:13.50pt;'> 74 <td x:str><strong>Web</strong></td> 75 <td x:str><a href="code/BasicFeature/Web/Browser">浏览器</a></td> 76 <td x:str><a href="code/BasicFeature/Web/RunJsInWeb">JS注入与执行</a></td> 77 <td ></td> 78 <td ></td> 79 </tr> 80 <tr height="18" style='height:13.50pt;'> 81 <td rowspan="2" x:str><strong>媒体</strong></td> 82 <td x:str><a href="code/BasicFeature/Media/Image">图片显示及处理</a></td> 83 <td x:str><a href="code/BasicFeature/Media/VideoShow">视频播放</a></td> 84 <td x:str><a href="code/BasicFeature/Media/GamePuzzle">图片裁剪与分割</a></td> 85 <td ></td> 86 </tr> 87 <tr height="18" style='height:13.50pt;'> 88 <td x:str><a href="code/BasicFeature/Media/Recorder">录音机</a></td> 89 <td x:str><a href="code/BasicFeature/Media/QRCodeScan">二维码扫描</a></td> 90 <td ></td> 91 <td ></td> 92 </tr> 93 <tr height="18" style='height:13.50pt;'> 94 <td x:str><strong>安全</strong></td> 95 <td x:str><a href="code/BasicFeature/Security/Cipher">加解密</a></td> 96 <td ><a href="code/BasicFeature/Security/AppAccountManager">应用账号管理</a></td> 97 <td ></td> 98 <td ></td> 99 </tr> 100 <tr height="18" style='height:13.50pt;'> 101 <td x:str><strong>网络与连接</strong></td> 102 <td x:str><a href="code/BasicFeature/Connectivity/Http">Http</a></td> 103 <td x:str><a href="code/BasicFeature/Connectivity/RPC">RPC通信</a></td> 104 <td ></td> 105 <td ></td> 106 </tr> 107 <tr height="18" style='height:13.50pt;'> 108 <td x:str><strong>数据管理</strong></td> 109 <td x:str><a href="code/BasicFeature/DataManagement/Preferences">首选项</a></td> 110 <td ></td> 111 <td ></td> 112 <td ></td> 113 </tr> 114 <tr height="18" style='height:13.50pt;'> 115 <td x:str><strong>文件管理</strong></td> 116 <td x:str><a href="code/BasicFeature/FileManagement/FileManager">文件管理</a></td> 117 <td x:str><a href="code/BasicFeature/FileManagement/MediaCollections">媒体管理合集</a></td> 118 <td ></td> 119 <td ></td> 120 </tr> 121 <tr height="18" style='height:13.50pt;'> 122 <td rowspan="2" x:str><strong>设备管理</strong></td> 123 <td x:str><a href="code/BasicFeature/DeviceManagement/USBManager">USB管理</a></td> 124 <td x:str><a href="code/BasicFeature/DeviceManagement/Location">位置服务</a></td> 125 <td x:str><a href="code/BasicFeature/DeviceManagement/ScreenDetector">屏幕探测</a></td> 126 <td x:str><a href="code/BasicFeature/DeviceManagement/Vibrator">振动</a></td> 127 </tr> 128 <tr height="18" style='height:13.50pt;'> 129 <td x:str><a href="code/BasicFeature/DeviceManagement/Sensor">传感器</a></td> 130 <td ></td> 131 <td ></td> 132 </tr> 133 <tr height="18" style='height:13.50pt;'> 134 <td rowspan="2" x:str><strong>电话服务</strong></td> 135 <td x:str><a href="code/BasicFeature/Telephony/Call">拨打电话</a></td> 136 <td x:str><a href="code/BasicFeature/Telephony/SimManager">SIM卡管理</a></td> 137 <td x:str><a href="code/BasicFeature/Telephony/Message">短信</a></td> 138 <td x:str><a href="code/BasicFeature/Telephony/Contact">联系人</a></td> 139 </tr> 140 <tr height="18" style='height:13.50pt;'> 141 <td x:str><a href="code/BasicFeature/Telephony/Observer">网络和Sim卡状态订阅</a></td> 142 <td x:str><a href="code/BasicFeature/Telephony/MobileNetwork">蜂窝数据</a></td> 143 <td x:str><a href="code/BasicFeature/Telephony/RadioTech">网络搜索</td> 144 <td ></td> 145 </tr> 146 <tr height="18" style='height:13.50pt;'> 147 <td rowspan="1" x:str><strong>任务管理</strong></td> 148 <td x:str><a href="code/BasicFeature/TaskManagement/ReminderAgentManager">后台代理提醒</a></td> 149 <td x:str><a href="code/BasicFeature/TaskManagement/WorkScheduler">延迟任务调度</a></td> 150 <td x:str><a href="code/BasicFeature/TaskManagement/Flybird">资源调度接口使用</a></td> 151 <td ></td> 152 </tr> 153 <tr height="18" style='height:13.50pt;'> 154 <td x:str><strong>设备信息统计</strong></td> 155 <td x:str><a href="code/BasicFeature/DeviceUsageStatistics/DeviceUsageStatistics">设备使用信息统计</a></td> 156 <td ></td> 157 <td ></td> 158 <td ></td> 159 </tr> 160 <tr height="18" style='height:13.50pt;'> 161 <td x:str><strong>DFX</strong></td> 162 <td x:str><a href="code/BasicFeature/DFX/Debug">Debug调试</a></td> 163 <td ><a href="code/BasicFeature/DFX/DotTest">测试打点</a></td> 164 <td ><a href="code/BasicFeature/DFX/FaultLogger">故障日志获取</a></td> 165 <td ><a href="code/BasicFeature/DFX/Logger">日志打印</a></td> 166 </tr> 167 <tr height="18" style='height:13.50pt;'> 168 <td x:str><strong>国际化</strong></td> 169 <td x:str><a href="code/BasicFeature/Internationalnation/ResourceManager">资源管理</a></td> 170 <td ></td> 171 <td ></td> 172 <td ></td> 173 </tr> 174 <tr height="18" style='height:13.50pt;'> 175 <td x:str><strong>IDL</strong></td> 176 <td x:str><a href="code/BasicFeature/IDL/AbilityConnectServiceExtension">Ability与ServiceExtensionAbility通信</a></td> 177 <td x:str></td> 178 <td x:str></td> 179 <td x:str></td> 180 </tr> 181 <tr height="18" style='height:13.50pt;'> 182 <td height="90" align="center" rowspan="9" style='height:67.50pt;' x:str><strong>系统特性</strong></td> 183 <td rowspan="2" x:str><strong>应用模型</strong></td> 184 <td x:str><a href="code/SystemFeature/ApplicationModels/Launcher">仿桌面应用</a></td> 185 <td x:str><a href="code/SystemFeature/ApplicationModels/MissionManager">任务管理</a></td> 186 <td x:str><a href="code/SystemFeature/ApplicationModels/StaticSubscriber">静态订阅</a></td> 187 <td x:str><a href="code/SystemFeature/ApplicationModels/AccessibilityExtAbility">无障碍扩展</a></td> 188 </tr> 189 <tr height="18" style='height:13.50pt;'> 190 <td x:str><a href="code/SystemFeature/ApplicationModels/EnterpriseAdminExtensionAbility">企业设备管理扩展</a></td> 191 <td ></td> 192 <td ></td> 193 <td ></td> 194 </tr> 195 <tr height="18" style='height:13.50pt;'> 196 <td x:str><strong>媒体</strong></td> 197 <td x:str><a href="code/SystemFeature/Media/Screenshot">截屏</a></td> 198 <td x:str><a href="code/SystemFeature/Media/ScreenRecorder">录屏</a></td> 199 <td ></td> 200 <td ></td> 201 </tr> 202 </tr> 203 <tr height="18" style='height:13.50pt;'> 204 <td x:str><strong>安全</strong></td> 205 <td x:str><a href="code/SystemFeature/Security/AbilityAccessCtrl">应用访问权限控制</a></td> 206 <td ></td> 207 <td ></td> 208 <td ></td> 209 </tr> 210 <tr height="18" style='height:13.50pt;'> 211 <td x:str><strong>窗口管理</strong></td> 212 <td x:str><a href="code/SystemFeature/WindowManagement/WindowExtAbility">窗口扩展</a></td> 213 <td ></td> 214 <td ></td> 215 <td ></td> 216 </tr> 217 <tr height="18" style='height:13.50pt;'> 218 <td x:str><strong>网络与连接</strong></td> 219 <td x:str><a href="code/SystemFeature/Connectivity/Wlan">Wlan</a></td> 220 <td x:str><a href="code/SystemFeature/Connectivity/Bluetooth">蓝牙</a></td> 221 <td ></td> 222 <td ></td> 223 </tr> 224 <tr height="18" style='height:13.50pt;'> 225 <td x:str><strong>数据管理</strong></td> 226 <td x:str><a href="code/SystemFeature/DataManagement/CrossAppDataShare">系统应用跨应用数据共享</a></td> 227 <td ></td> 228 <td ></td> 229 <td ></td> 230 </tr> 231 <tr height="18" style='height:13.50pt;'> 232 <td x:str><strong>设备管理</strong></td> 233 <td x:str><a href="code/SystemFeature/DeviceManagement/PowerManager">系统电源管理</a></td> 234 <td x:str><a href="code/SystemFeature/DeviceManagement/StorageStatistic">存储空间统计</a></td> 235 <td x:str><a href="code/SystemFeature/DeviceManagement/Screen">屏幕属性</a></td> 236 <td ></td> 237 </tr> 238 <tr height="18" style='height:13.50pt;'> 239 <td x:str><strong>国际化</strong></td> 240 <td x:str><a href="code/SystemFeature/Internationalnation/International">时区和语言设置</a></td> 241 <td ></td> 242 <td ></td> 243 <td ></td> 244 <tr height="18" style='height:13.50pt;'> 245 <td height="90" align="center" rowspan="5" style='height:67.50pt;' x:str><strong>关键特性</strong></td> 246 <td rowspan="2" x:str><strong>一次开发,多端部署</strong></td> 247 <td x:str><a href="code/SuperFeature/MultiDeviceAppDev/AdaptiveCapabilities">ArkTS一多能力集合</a></td> 248 <td x:str><a href="code/SuperFeature/MultiDeviceAppDev/JsAdaptiveCapabilities">Js一多能力集合(Js)(API 8)</a></td> 249 <td x:str><a href="code/SuperFeature/MultiDeviceAppDev/Weather">入门示例:天气应用</a></td> 250 <td x:str><a href="code/SuperFeature/MultiDeviceAppDev/HealthyDiet">典型页面场景:健康饮食</a></td> 251 </tr> 252 <tr height="18" style='height:13.50pt;'> 253 <td x:str><a href="code/SuperFeature/MultiDeviceAppDev/AppMarket">典型页面场景:应用市场首页</a></td> 254 <td x:str><a href="code/SuperFeature/MultiDeviceAppDev/MusicAlbum">典型页面场景:音乐专辑页</a></td> 255 <td x:str><a href="code/SuperFeature/MultiDeviceAppDev/Settings">典型页面场景:设置应用页面</a></td> 256 <td ></td> 257 </tr> 258 <tr height="18" style='height:13.50pt;'> 259 <td rowspan="2" x:str><strong>分布式</strong></td> 260 <td x:str><a href="code/SuperFeature/DistributedAppDev/ArkTSDistributedMusicPlayer">ArkTS分布式音乐播放</a></td> 261 <td x:str><a href="code/SuperFeature/DistributedAppDev/ArkTSDistributedCalc">分布式计算器</a></td> 262 <td x:str><a href="code/SuperFeature/DistributedAppDev/DistributedNote">分布式对象</a></td> 263 <td x:str><a href="code/SuperFeature/DistributedAppDev/DistributedRdb">分布式关系型数据库</a></td> 264 </tr> 265 <tr height="18" style='height:13.50pt;'> 266 <td x:str><a href="code/SuperFeature/DistributedAppDev/Kvstore">分布式数据管理</a></td> 267 <td x:str><a href="code/SuperFeature/DistributedAppDev/DistributedAuthentication">分布式组网认证</a></td> 268 <td x:str></td> 269 <td></td> 270 </tr> 271 <tr height="18" style='height:13.50pt;'> 272 <td x:str><strong>卡片</strong></td> 273 <td x:str><a href="code/SuperFeature/Widget/FormExtAbility">Stage模型卡片</a></td> 274 <td></td> 275 <td></td> 276 <td></td> 277 </tr> 278 <tr height="18" style='height:13.50pt;'> 279 <td height="90" align="center" rowspan="4" style='height:67.50pt' x:str><strong>行业解决方案</strong></td> 280 <td x:str><strong>即时通信</strong></td> 281 <td x:str><a href="code/Solutions/IM/Chat">聊天实例应用</a></td> 282 <td ></td> 283 <td ></td> 284 <td ></td> 285 </tr> 286 <tr height="18" style='height:13.50pt;'> 287 <td x:str><strong>电商</strong></td> 288 <td x:str><a href="code/Solutions/Shopping/OrangeShopping">购物示例应用</a></td> 289 <td ></td> 290 <td ></td> 291 <td ></td> 292 </tr> 293 </tr> 294 <tr height="18" style='height:13.50pt;'> 295 <td x:str><strong>游戏</strong></td> 296 <td x:str><a href="code/Solutions/Game/Game2048">游戏2048</a></td> 297 <td x:str><a href="code/Solutions/Game/Lottie">Lottie</a></td> 298 <td x:str><a href="code/Solutions/Game/DistributedDataGobang">分布式五子棋</a></td> 299 <td ></td> 300 </tr> 301 <tr height="18" style='height:13.50pt;'> 302 <td x:str><strong>工具</strong></td> 303 <td x:str><a href="code/Solutions/Tools/PatternLock">图案密码锁</a></td> 304 <td x:str><a href="code/Solutions/Tools/FlipClock">翻页时钟</a></td> 305 <td x:str><a href="code/Solutions/Tools/ArkTSClock">ArkTS时钟</a></td> 306 <td ></td> 307 </tr> 308 <tr height="18" style='height:13.50pt;'> 309 <td height="54" align="center" rowspan="3" style='height:40.50pt' x:str><strong>工程能力</strong></td> 310 <td x:str><strong>资源配置</strong></td> 311 <td x:str><a href="code/Project/ResourceAllocation/ApplicationThemeSwitch">应用主题切换</a></td> 312 <td ></td> 313 <td ></td> 314 <td ></td> 315 </tr> 316 <tr height="18" style='height:13.50pt;'> 317 <td x:str><strong>三方库使用</strong></td> 318 <td x:str><a href="code/Project/ThirdPartyLibrary/Npm">npm的使用</a></td> 319 <td ></td> 320 <td ></td> 321 <td ></td> 322 </tr> 323 <tr height="18" style='height:13.50pt;'> 324 <td x:str><strong>应用程序包</strong></td> 325 <td x:str><a href="code/Project/ApplicationHap/MultiHap">多hap</a></td> 326 <td ></td> 327 <td ></td> 328 <td ></td> 329 </tr> 330 <tr height="18" style='height:13.50pt;'> 331 <td rowspan="1" align="center" x:str><strong>语言基础类库</strong></td> 332 <td rowspan="1" x:str><strong>语言基础类库</strong></td> 333 <td x:str><a href="code/LaunguageBaseClassLibrary/LanguageBaseClassLibrary">语言基础类库</a></td> 334 <td x:str><a href="code/LaunguageBaseClassLibrary/JsWorker">启动一个worker</a></td> 335 <td x:str><a href="code/LaunguageBaseClassLibrary/ZipLib">压缩与解压</a></td> 336 <td ></td> 337 </tr> 338 <tr> 339 <![if supportMisalignedColumns]> 340 <tr height="18" style="display:none;"> 341 </tr> 342 <![endif]> 343</table> 344 345 346 347 348 349## 目录<a name="sectionMenu"></a> 350 351Sample仓下所展示的组件能力: 352 353``` 354code 355|---UI # UI开发 356 |---ArkTsComponentClollection # ArkTs组件集 357 |---JsComponentClollection # 类Web开发范式组件集 358|---BasicFeature # 基础特性 359 |---ApplicationModels # 应用模型 360 |---Notification # 通知 361 |---WindowManagement # 窗口管理 362 |---Web # Web 363 |---Media # 媒体 364 |---Security # 安全 365 |---Connectivity # 网络与连接 366 |---DataManagement # 数据管理 367 |---FileManagement # 文件管理 368 |---Telephony # 电话服务 369 |---TaskManagement # 任务管理 370 |---DeviceManagement # 设备管理 371 |---DeviceUsageStatistics # 设备使用信息统计 372 |---DFX # DFX 373 |---Internationalnation # 国际化 374 |---IDL # IDL 375|---SystemFeature # 系统特性 376 |---ApplicationModels # 应用模型 377 |---WindowManagement # 窗口管理 378 |---Media # 媒体 379 |---Connectivity # 网络与连接 380 |---DataManagement # 数据管理 381 |---DeviceManagement # 设备管理 382 |---Internationalnation # 国际化 383|---SuperFeature # 关键特性 384 |---MultiDeviceAppDev # 一多 385 |---DistributedAppDev # 分布式 386 |---Widget # 卡片 387|---Solutions # 行业解决方案 388 |---IM # 即时通信 389 |---Shopping # 电商 390 |---Game # 游戏 391 |---Tools # 工具 392|---Project # 工程能力 393 |---ResourceAllocation # 资源配置 394 |---ThirdPartyLibrary # 三方库使用 395 |---ApplicationHap # 应用程序包 396|---LaunguageBaseClassLibrary # 语言基础类库 397``` 398 399## 约束<a name="section18841871178"></a> 400 401安装应用示例之前,请先查看"README_zh.md"文件来确认应用示例是否为stage模型,若为Stage模型需要查看entry/src/main路径下的module.json5文件中的"deviceType"字段来确认该应用支持的设备类型;否则为FA模型,查看entry/src/main路径下的config.json文件中的"deviceType"字段来确认该应用示例支持的设备类型,两种模型都可尝试通过修改该字段使其可以在相应类型的设备上运行。 402 403 404## 使用方法<a name="section17988202503116"></a> 405 4061. 本仓默认下载全量工程代码,如需下载单个应用工程代码,请先下载并执行工具[【Windows版本】](DirCloneTool/CloneSpecifyDirForWindows.bat)、[【macOS版本】]()、[【Linux版本】]() 4072. 将独立的应用示例工程导入DevEco Studio进行编译构建及运行调试。 4083. 部分应用示例中含有多个模块,开发者可以选择对单个模块进行编译构建,生成一个HAP应用安装包,也可以对整个工程进行编译构建,生成多个HAP应用安装包。 4094. 安装运行后,即可在设备上查看应用示例运行效果,以及进行相关调试。 410 411## Changlog<a name="section17988202503117"></a> 412 413应用修改记录:[changelog](changelog.md) 414 415## releasenote 416 417应用发布版本分支说明:[releasenote](releasenote.md) 418 419## 相关仓<a name="section17988202503118"></a> 420 4211. [app_sample](https://gitee.com/openharmony/app_samples) 已废弃 4222. [applications_app_sample](https://gitee.com/openharmony/applications_app_samples) 423 424