
桌面快捷方式开发实践 原创
一、介绍
当应用的功能日益复杂时,用户在应用里寻觅某个功能的操作流程也越发冗长。若想优化用户体验,不妨为应用里那些常用功能设立桌面快捷方式,从而达成快速开启应用、一键抵达特定功能之类的效果。就像相机应用的 “快速拍照”、便签应用的 “新建便签” 以及地图应用的常用地点导航等功能的快捷途径,用户借助这些快捷方式能够迅速切入特定功能页面,这不但能大幅提升操作效率,而且会加深用户对应用的依赖程度。运用快捷方式,还能够达成个性化定制的诉求,构建多个快捷方式,以此契合个性化的工作模式与操作习惯。
二、工程目录
三、使用说明
长安应用图标,即可出现快捷方式列表。点击对应图标,即可快速打开应用中对应的页面。或者将快捷方式图标长按拖动到桌面,然后点击打开对应页面。
四、实现流程
给应用添加的导航快捷方式需要进行如下步骤:
(1)在resources/base/profile下的main_pages.json文件中添加对应快捷方式页面的路由信息。
(2)/resources/base/profile/目录下创建名为shortcuts_config.json的文件
shortcutId表示快捷方式的ID、label表示快捷方式对外显示的文字描述信息、icon表示快捷方式的图标、wants中则是快捷方式内定义的目标wants信息集合。通过wants中的parameters参数来指定拉起快捷方式时的自定义数据。
(3)在module.json5配置文件中的abilities标签下的metadata中设置resource属性值为$profile:shortcuts_config,指定应用的快捷方式配置文件,即使用shortcuts_config.json文件中的shortcuts配置。
(4)在EntryAbility.ets文件中定义跳转到指定页面的方法。
在步骤2中,通过parameters参数来指定了拉起快捷方式时的自定义数据 ,如"shortCutKey": "SecondPage"。此时,可以通过获取want中的parameters里的shortCutKey来判断用户使用了哪种快捷方式,从而进行对应的页面跳转。
需要注意的是如果app不在后台,那么会走onCreate()方法,如果app在后台,不会再走onCreate()方法而是回调onNewWant()方法。所以对这两种情况都要进行处理。
EntryAbility.ets
