139 Star 1.3K Fork 1.5K

OpenHarmony/applications_app_samples

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
.gitee
code
BasicFeature
Ability
AbilityFeature
AppScope
entry
hvigor
screenshots
.gitignore
README_zh.md
build-profile.json5
hvigorfile.ts
hvigorw
hvigorw.bat
oh-package.json5
ohosTest.md
AbilityRuntime
AppStartup
UniversalLink
Ads/OAIDSample
ApplicationModels
Connectivity
DFX
DataManagement
DeviceManagement
Extension/Contexttest
FileManagement
Graphics
International/International
Media
Native
Notification
Print/ScanNapiInterfaceDemo
Resource/ResourceManager
Security
TaskManagement
Telephony
Web
Window/MediaFullScreen
DataMock
DocsSample
LaunguageBaseClassLibrary
Performance
Project
Solutions
SuperFeature
SystemFeature
UI
.gitattributes
.gitignore
CodeCommitChecklist.md
LICENSE
OAT.xml
README.md
README_zh.md
SampleReadTemplate.md
changelog.md
ohosTestTemplate.md
releasenote.md
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

基础能力增强

介绍

本示例使用 ApplicationContext ,ohos.ability.wantConstant ,ohos.app.ability.StartOptions等接口实现了以下功能:

  1. 支持应用定制系统环境参数;

  2. 支持隐式启动个数为0时才触发提示弹框--增加了一个flag;

  3. 支持应用清理自己的数据;

  4. Ability启动参数支持传递初始位置/初始大小/是否携带动效;

效果预览

主页面 隐式启动弹窗 英文切换页 深色模式切换页

使用说明

1.应用切换语言的能力;

点击'切换英文语言'的ListItem,当前页面切换为英文,标题'基础能力增强'切换成'Basic capabilities are enhanced' ,点击'切换中文语言'的ListItem,当前页面切换为中文,标题'Basic capabilities are enhanced'切换成'基础能力增强';

2.应用切换颜色模式的能力

点击'切换深色模式'的ListItem,当前页面颜色切换为深色,弹出Toast提示'切换成功',点击'切换浅色模式' 的ListItem,当前页面颜色切换为浅色,弹出Toast提示'切换成功';

3.应用隐式启动个数为0时,才触发提示弹框的特性

点击'隐式启动弹窗'的ListItem,弹出弹窗,弹窗标题为'未找到文件',点击'隐式启动不弹窗' 的ListItem,弹出Toast提示'隐式启动不弹窗',且无弹窗(仅支持rk);

4.应用清理自己的数据的能力

点击'创建数据'的ListItem,弹出Toast提示创建'缓存文件成功',点击'检查数据'的ListItem,弹出Toast提示创建'查询到缓存文件' ,点击'清除数据'的ListItem,应用清理缓存文件后自动退出。手动重新启动应用后,点击'检查数据'的ListItem,弹出Toast提示创建'未找到缓存文件';

5.应用可以设置启动参数启动Ability能力

点击'StartOptions配置'的ListItem,应用启动NewAbility。返回主界面后,点击'启动动画'的Toggle,再点击' StartOptions配置'的ListItem,应用启动NewAbility;

工程目录

entry/src/main/ets/
|---characteroperation
|   |---CharacterOperation.ets          // 调用applicationContext方法的工具类
|---entryability
|   |---EntryAbility.ets				// 首页的Ability
|---pages
|   |---Index.ets						// 首页
|   |---New.ets							// 被启动UIAbility的展示页
|---newability
|   |---NewAbility.ets					// 被启动的UIAbility(验证新接口启动使用)
|---utils								// 工具
|   |---Logger.ets						// 日志工具

具体实现

  • 应用切换语言的功能接口封装在CharacterOperation,使用ApplicationContext 调用setLanguage(language: string): void方法实现,源码参考:CharacterOperation.ets
  • 应用切换颜色模式的功能接口封装在CharacterOperation,使用ApplicationContext 调用setColorMode(colorMode: ConfigurationConstant.ColorMode): void方法实现,源码参考:CharacterOperation.ets
  • 应用清理自己的数据的功能接口封装在CharacterOperation,使用ApplicationContext 调用clearUpApplicationData(callback: AsyncCallback): void方法实现,源码参考:CharacterOperation.ets
  • 应用隐式启动个数为0时不触发提示弹框的特性,通过给Want的flags设置为FLAG_START_WITHOUT_TIPS,源码参考:Index.ets
  • 应用可以设置启动参数启动Ability能力,通过给startAbility(want: Want, options: StartOptions, callback: AsyncCallback): void;方法传递新增参数StartOptions来设置启动位置,大小以及是否包含动画,源码参考:Index.ets

相关权限

依赖

约束与限制

1.本示例仅支持标准系统上运行,支持设备:RK3568;

2.本示例为Stage模型,支持API11版本SDK,版本号:4.1.5.1;

3.本示例需要使用DevEco Studio 3.1.1 Release (Build Version: 3.1.0.501, built on June 20, 2023)才可编译运行;

下载

git init
git config core.sparsecheckout true
echo code/BasicFeature/Ability/AbilityFeature/ > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin master
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/openharmony/applications_app_samples.git
git@gitee.com:openharmony/applications_app_samples.git
openharmony
applications_app_samples
applications_app_samples
master

搜索帮助