分享好友 最新动态首页 最新动态分类 切换频道
iOS开发长按app弹出快捷方式设置
2024-12-26 21:13


iOS开发长按app弹出快捷方式设置

android 7.0新特性,类似iPhone的3Dtouch,长按app桌面图标会弹出快捷方式,效果如下:

引入快捷方式:Shortcuts

两种方式:静态xml和动态java设置(类似BroadcastReceiver)

静态使用步骤:

1.在工程资源文件res目录下新建xml/shortcuts.xml

shortcuts标签下可以注册多个shortcut,

shortcut的常用属性如下:

  1. 1.shortcutId, 唯一的id
  2. enabled, 表示该shortcut是否可用
  3. shortcutShortLabel, 短名称, 下面还会有长名称, 如果长名称显示不下, 就显示短名称
  4. shortcutLongLabel, 长名称, launcher会优先选择长名称显示
  5. shortcutDisabledMessage, 当用户选择一个不可用的shortcut时给的toast提示内容

intent表示我们点击shortcut时的意图, 属性说明:

  1. targetPackage是指定一个目标应用的包名,
  2. targetClass是我们要跳转的目标类,
  3. action记得一定要配置, 否则会崩溃
  4. categories, 目前官方只提供了android.shortcut.conversation,写死即可。
2.在清单文件中配置shortcuts:

注意,配置shortcuts的activity必须要具备action是android.intent.action.MAIN和category是android.intent.category.LAUNCHER!

所以清单文件应该是这样的:

静态配置,基本就是这样。显然这样不够灵活,我们可以根据后台数据动态配置。

动态配置:Dynamic Shortcuts

动态添加,这样基本就完成了,下面讲述如何动态删除?

shortcut除了长按时候可以列表形式展示在icon上方,也可以把单个item拖到桌面。类似这样

显然,动态删除,不但考虑删除列表,还要删除已放置桌面的快捷入口icon,但是文档提到只允许用户手动删除icon,那么我们删除与之对应的Activity后,用户再点击快捷入口icon会不会崩溃呢?显然系统提供了对策。

Pinning Shortcuts就是我们提到的桌面快捷入口icon。

动态删除:
  1. 首先我们先调用mShortcutManager.getPinnedShortcuts()来获取到所有的Pinning Shortcuts, 找到我们删除的那个,
  2. 然后通过disableShortcuts(List)来禁用掉该项,
  3. 最后我们还要用过removeDynamicShortcuts(List)来从shortcuts中移除。
动态更新 信息:


总结:

  1. 类似于 iOS 的 3D Touch,长按启动图标弹出几个快捷入口,入口最好不要超过 4 个,像搜索、扫描二维码、发帖等应用程序最常用功能的入口被称为静态 shortcut,不会随着用户不同或随着用户使用而改变。
    还有一种像从某个存档点继续游戏、任务进度等与用户相关的上下文敏感入口被称为动态 shortcut,会因用户不同或随着用户使用不断变化。还有一种在 Android 8.0 (API level 26) 及以上系统版本上像固定网页标签等用户主动固定到桌面的快捷方式被称为固定 shortcut
  2. 静态 shortcut 系统可以自动备份和恢复,动态 shortcut 需要应用自己备份和恢复,固定 shortcut 的图标系统无法备份和恢复因此需要应用自己完成
  3. android:shortcutId 和 android:shortcutShortLabel 属性是必须的,android:shortcutShortLabel 不能超过 10 个字符,android:shortcutLongLabel 不能超过 25 个字符,android:icon 不能包含 tint
  4. 获取 ShortcutManager 的方式有两个: getSystemService(ShortcutManager.class) 和 getSystemService(Context.SHORTCUT_SERVICE)

官网的文档: https://developer.android.com/preview/shortcuts.html

最新文章
亚洲精品无人区一区二区三区网友认为这一内容丰富多样,吸引了大量观众的关注,同时也引发了对相关话题的热烈讨论和分享
  最新消息显示,某知名视频平台推出了一系列以“亚洲精品无人区”为主题的节目,引发了广泛关注和热烈讨论。网友们纷纷表示,这些内容丰富多样,不仅吸引了大量观众,还激发了对相关话题的深入探讨。  “亚洲精品无人区”这一概念涵盖
郑州网站优化,助力企业提升在线竞争力,郑州企业网站优化攻略,打造在线竞争力新优势
郑州网站优化服务,致力于帮助企业提升在线竞争力。通过专业技术和策略,优化网站结构、内容与用户体验,实现搜索引擎优化,提高企业网站在搜索引擎排名,吸引更多潜在客户,助力企业实现线上业务增长。2、提高用户体验:优化网站页面布局
高清美女写真:试试搜狐简单AI的超强生图功能!
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个视觉至上的时代,想要一张好看的美女写真,是否让你倍感压力?曾几何时,编辑需要精心
幸福宝推广站长统计网站:精准数据分析助力站长提高推广效果:解锁独特美味新秘籍
在互联网时代,推广和数据分析已经成为了站长运营网站和应用的重要组成部分。站长们需要通过准确的统计数据来优化推广策略,从而提高网站流量和转化率。幸福宝推广站长统计网站,作为一种专业的数据统计工具,能够帮助站长更加精确地了解用
茶叶直播间运营攻略:掌握技巧,打造热门频道,助你成为茶界领军人物
在茶叶直播间运营中,了解目标受众是至关重要的一步。首先需要对现有受众进行分析,包括他们的年龄、性别、地域分布等基本信息,然后针对性地拓展更广泛的受众群体。这可能涉及到寻找新的市场细分,例如针对年轻人、茶叶爱好者、健康生活追
苏州SEMSEO:数字营销新潮流
随着互联网技术的迅猛发展,数字营销已经成为了企业推广和品牌建设的核心手段之一。特别是在苏州这样的经济发达地区,越来越多的企业开始重视数字营销的价值,其中,搜索引擎营销(SEM)和搜索引擎优化(SEO)逐渐成为主流的营销手段。通过
百度蜘蛛池优化:零距离蜘蛛池升级,打造全新搜索引擎优化体验
百度蜘蛛池优化升级,推出零距离蜘蛛池,旨在提供更高效的搜索引擎优化体验,助力网站提升排名和流量。本文目录导读:零距离蜘蛛池升级亮点随着互联网的飞速发展,搜索引擎优化(SEO)已经成为网站运营的重要环节,为了满足用户对高效、精
使用 Docker 打包 Rust Web 服务
引言 学习Rust四个多月了,打算用Rust重写我之前的web项目。Rust web中文资料非常少,学习之路很是坎坷,很多框架文档少的可怜,甚至有的框架直接没有文档只能依靠源代码里面的运行示例研究。但是不管多困难只要坚持下去就一定会有收获。这
总结:唐山男科医院排行总结,唐山男科医院排行大盘点
总结:唐山男科医院排行总结,唐山男科医院排行大盘点!唐山男科医院排名:1.唐山唐诚医院,2.唐山唐诚男科医院,3.唐山性功能障碍医院男科,4.唐山前列腺炎医院,5.唐山泌尿外科医院。唐山唐诚医院的每一个角落,都弥漫着一种独特的气息,
相关文章
推荐文章
发表评论
0评