【学以致用】android功能实现5---android8.0 Launcher获取快捷方式源码分析(1)

本文详细介绍了Android 8.0中如何通过requestPinShortcut方法创建桌面快捷方式。创建过程包括两步:1) 获取快捷方式的名字和图标并在桌面创建;2) 存储intent以启动应用。当请求创建快捷方式时,系统会启动带有ACTION_CONFIRM_PIN_SHORTCUT的activity。Launcher通过处理intent中的信息接受快捷方式请求,并调用accept()方法将快捷方式存入系统。最后,通过快捷方式ID和包名在系统中定位并启动相应应用。
摘要由CSDN通过智能技术生成

从其他应用往桌面创建快捷方式,android8.0统一采用requestPinShortcut的方式。 对于桌面而言,是怎么从requestPinShortcut获取快捷方式信息在桌面创建快捷方式呢?

 

Android8.0的快捷方式参数不再通过广播传送,而是存放在系统当中。创建快捷方式的应用将信息放入系统,而系统则生成shortcut ID等信息,传入桌面应用。

 

桌面创建快捷方式由两部分完成。

1:获取快捷方式的名字和图标,然后将两者作为快捷方式放到桌面上,提供移动拖拽点击等服务。桌面应用接收ID等数个信息,在桌面创建快捷方式,其中的图片等资源需要桌面通过ID等信息去系统里面获取。

2:放置在桌面上的快捷方式有intent这个参数存入数据库,而intent参数一个核心功能是启动该应用。配置合理的intent并使其能够启动。点击启动应用的时候,也是通过ID等信息,去系统中启动。

 

实际操作流程如下:

首先需要创建一个activity,这个activity会在其他应用调用requestPinShortcut的时候,会在框架中通过一个service

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值