Android创建桌面快捷方式(兼容Android 8.0)

Android创建桌面快捷方式(兼容Android 8.0),第1张

在Android O原生桌面上,按照传统创建快捷方式的形式,是不会产生快捷方式的。

传统方式如下:

从Android 71(API 25)开始,新增了ShortcutManager,可以对桌面久按应用图标弹出的快捷方式进行管理。

但是,Android 71上直接往桌面上添加快捷方式依然是使用上面说到的这种旧方式,但是Android O上,Google应该是想通过比较统一的接口来管理桌面快捷方式了,所以摒弃了这种形式,转而使用ShortcutManager进行管理。所以API 26上,ShortcutManager进行管理。所以API 26上,ShortcutManager新增了对Pinned Shortcuts(固定快捷方式)的管理。

官文:

Apps can pin an existing shortcut (either static or dynamic) or an entirely new shortcut to a supported launcher programatically using requestPinShortcut(ShortcutInfo, IntentSender) You pass two arguments into this method:

A ShortcutInfo object – If the shortcut already exists, this object should contain only the shortcut’s ID Otherwise, the new ShortcutInfo object must contain an ID, an intent, and a short label for the new shortcut

A PendingIntent object – This intent represents the callback that your app receives if the shortcut is successfully pinned to the device’s launcher

Note: If the user doesn’t allow the shortcut to be pinned to the launcher, the pinning process fails, and the Intent object that is passed into this PendingIntent object isn’t executed

Note: Due to background execution limits introduced in Android O, it’s best to use a manifest-declared receiver to receive a callback

Also, to prevent other apps from invoking the receiver, add the attribute assignment android:exported=”false” to the receiver’s manifest entry

Note: As you add logic in your app to make requests to pin shortcuts, keep in mind that not all launchers support pinning of shortcuts To determine whether your app can complete this process on a particular device, check the return value of isRequestPinShortcutSupported() Based on this return value, you might decide to hide the option in your app that allows users to pin a shortcut

Note: See also the support library APIs isRequestPinShortcutSupported(Context) and requestPinShortcut(Context, ShortcutInfoCompat, IntentSender), which works on Android versions lower than O by falling back to the deprecated private intent comandroidlauncheractionINSTALL_SHORTCUT

译:

应用程序可以使用requestPinShortcut(ShortcutInfo,IntentSender)将现有的快捷方式(静态或动态)或全新的快捷方式固定到支持的启动器。你通过这个方法的两个参数:

ShortcutInfo对象 - 如果快捷方式已存在,则该对象应仅包含快捷方式的ID。否则,新的ShortcutInfo对象必须包含新快捷方式的ID,意图和短标签。

PendingIntent对象 - 此意图表示如果快捷方式成功固定到设备的启动器,您的应用程序将收到回调。

注意:如果用户不允许将快捷方式固定在启动器上,则固定进程将失败,并且未执行传入此PendingIntent对象的Intent对象。

注意:由于Android O中引入的后台执行限制,最好使用清单声明的接收器来接收回调。

另外,为了防止其他应用程序调用接收器,将属性赋值android:exported =“false”添加到接收者的清单条目中。

注意:当您在应用程序中添加逻辑以引导快捷方式时,请记住,并非所有启动器都支持固定快捷方式。 要确定您的应用程序是否可以在特定设备上完成此过程,请检查isRequestPinShortcutSupported()的返回值。 根据此返回值,您可以决定隐藏您应用程序中允许用户固定快捷方式的选项。

注意:另请参见支持库API isRequestPinShortcutSupported(Context)和requestPinShortcut(Context,ShortcutInfoCompat,IntentSender),它可以在低于O的Android版本上运行,因为它们回落到不推荐使用的私有意图comandroidlauncheractionINSTALL_SHORTCUT。

ShortcutManager类在API level 26上,增加了对isRequestPinShortcutSupported、requestPinShortcut、createShortcutResultIntent三个方法。说明如下:

1isRequestPinShortcutSupported

官文:

Return TRUE if the app is running on a device whose default launcher supports requestPinShortcut(ShortcutInfo, IntentSender)

The return value may change in subsequent calls if the user changes the default launcher app

Note: See also the support library counterpart isRequestPinShortcutSupported(Context), which supports Android versions lower than O using the legacy private intent comandroidlauncheractionINSTALL_SHORTCUT

译:

如果默认桌面支持requestPinShortcut(ShortcutInfo,IntentSender)方法,则返回TRUE。

如果用户更改默认启动程序应用程序,返回值可能会在后续调用中更改。

注意:另请参见支持库对应的isRequestPinShortcutSupported(Context),在低于O的Android版本,它支持使用旧的私有意图comandroidlauncheractionINSTALL_SHORTCUT。

2requestPinShortcut

官文:

Request to create a pinned shortcut The default launcher will receive this request and ask the user for approval If the user approves it, the shortcut will be created, and resultIntent will be sent If a request is denied by the user, however, no response will be sent to the caller

Only apps with a foreground activity or a foreground service can call this method Otherwise, it’ll throw IllegalStateException

It’s up to the launcher to decide how to handle previous pending requests when the same package calls this API multiple times in a row One possible strategy is to ignore any previous requests

Note: See also the support library counterpart requestPinShortcut(Context, ShortcutInfoCompat, IntentSender), which supports Android versions lower than O using the legacy private intent comandroidlauncheractionINSTALL_SHORTCUT

译:

请求创建固定的快捷方式。默认启动器将收到该请求,并要求用户批准。如果用户批准,将创建快捷方式,并且将发送resultIntent。但是,如果请求被用户拒绝,则不会向呼叫者发送任何响应。

只有具有前台活动或前台服务的应用程序才能调用此方法。否则,它将抛出IllegalStateException。

当同一个软件包连续多次调用该API时,由开发人员决定如何处理以前的待处理请求。一个可能的策略是忽略任何先前的请求。

注意:另请参见支持库对应件requestPinShortcut(Context,ShortcutInfoCompat,IntentSender),在低于O的Android版本,它支持使用旧的私有意图comandroidlauncheractionINSTALL_SHORTCUT。

3createShortcutResultIntent

官文:

Returns an Intent which can be used by the default launcher to pin a shortcut containing the given ShortcutInfo This method should be used by an Activity to set a result in response to ACTION_CREATE_SHORTCUT

译:

返回默认启动器可以使用的Intent来固定包含给定的ShortcutInfo的快捷方式。 Activity应该使用此方法来设置响应ACTION_CREATE_SHORTCUT的结果。

根据弹窗提示可以看出,可以通过拖动这个图标往桌面上添加快捷方式,可以通过点击自动添加按键,系统给你在桌面的默认位置上添加。

添加后,桌面上会出现如图所示的图标:

回调用到的Receiver:

打印log发现,onReceive如图官方文档所说,点击弹框自动添加按键后,会得到回调。但实践发现,如果桌面上已经添加了图标,当再次调用requestPinShortcut进行添加时,onReceive会在调用requestPinShortcut的时候,直接被回调,而且弹框也会弹出来。

在以上三个方法官方介绍中,官方提示我们,可以使用Android support库的ShortcutManagerCompat进行快捷方式的版本适配。于是,在buildgradle中添加依赖进行尝试:

通过浏览器菜单,添加“桌面书签”功能来实现。具体操作如下。

1)打开华为浏览器,登陆手机新浪网。

2)网页最底下有一个设置菜单,如红色框框。

3)弹出下图相关设置,点击“收藏网址”菜单。

4)弹出编辑数钱菜单。选择“桌面书签”复选框后,选择右上角的勾勾标识(如图红色框框)

5)弹出“添加到主屏幕”提示框,点击“添加”

6)此时网页快捷方式已成功添加到桌面(如下图)

可以使用手机WPS应用在桌面为指定文件建立一个桌面快捷方式。操作方法如下:

所需材料:手机WPS(手机WPS需要获取“创建桌面快捷方式”的权限)、华为EMUI80系统手机演示。

一、打开手机WPS,在文档列表中找到需要创建桌面快捷方式的文档,长按该文档 。

二、弹出的菜单中点击“添加至主屏幕”(再次强调:WPS需要获取创建桌面快捷方式的权限,否则无法创建)。

三、弹出的添加到主屏幕提示窗口内点击“添加”按钮。

四、使用上述步骤,即可在桌面为指定文档创建一个快捷方式。

Android系统手机添加桌面图标可以进入菜单界面找到想要建立桌面快捷方式的程序,按住图标不放,感到一下震动之后,图标即可移动,然后把图标拖动到您想要摆放的位置就可以松手了(注意操作期间要按定图标不要放)。(上述内容仅适用于广东联通用户)

安卓手机桌面图标消失了处理方法:安卓手机桌面图标消失可分以下几种情况:情况一:请检查是否误操作将程序图标拖拽至文件夹内或者其他位置,那么拖回图标即可。情况二:部分安卓终端具有隐藏应用或冻结应用等功能,根据具体品牌进行取消隐藏、取消冻结等操作即可。如非上述情况,可进入设置-应用程序管理,找到“桌面”,尝试强行停止并清除数据(注:桌面程序位置会被还原,如有需要,可重新调配)。

操作工具:安卓手机

安卓手机把软件放到桌面的操作步骤如下:

1、按住需要移动的应用图标,不要松手。

2、然后把手指点住的应用向右滑动。

3、一直滑动到右侧边缘。

4、当手指靠近右侧边缘时,桌面会随着手指的继续滑动而跳转到下一页,松开手就成功移动应用了。

5、这里就完成了,而在原来的桌面上,就空出一个位置。

安卓手机卡的原因:

安卓系统本身太过于开放,它是开放的系统,频繁的安装与卸载必然会在手机内积累大量残留,这些手机底层的残留物并不会因为你把APP卸载了而自动删除,卸载APP没用的,一般用户也意识不到它的存在,久而久之越积越多。

软件开发者水平良莠不齐,APP开发者技术有高低,有的算法和优化做得很烂,导致应用在使用时产生大量不必要的垃圾文件占用ROM空间,各种毫无必要的后台自动启动和进程占用RAM。这又要说到安卓宽松的审核机制,使得这些不规范APP得以流向消费者。

不良软件厂商的无耻行径强制在通知栏推送消息还算是轻的,更要命的是那些不良软件厂商的钓鱼推广。但是只要你点击了里面变成软件下载了,而且连停止按钮都没有,根本停不下来。这些垃圾软件一旦安装了,无时无刻不在后台占用你的手机内存和存储空间。

问题一:安卓系统怎么设置桌面 在桌面界面按住屏幕不放,就可以修改了

问题二:安卓手机桌面的设置没有了怎么办 不会没有吧!!实在找不到就下个GO桌面啥的,本人一直在用,蛮好的。

问题三:安卓手机如何更换桌面 楼主,

你在设置里找到应用程序,点管理应用程序,找到你说的360桌面,点一下,应该是会出来什么强行停止,卸载,清除数据什么的把?梗后你划到下面你就能看见清除默认设置,点一下,再试试看按你手机上的的小房子,应该会像你说的询问用哪个桌面,你选择启动器就好了,

如果问题已解决,就采纳哦~

问题四:安卓手机怎么把时间日期设置到桌面 不是有小部件吗

问题五:安卓手机桌面排列怎么设置 只需在应用程序界面选择要创建快捷方式的程序,点击长按,然后图标就会发生变化。此时界面也会变成主界面,只需找到合适的位置松手,快捷方式就创建完成了。向下拖动到顶部,即可放置到桌面上。

安卓手机与iOS系统不同,分为桌面和主菜单两个部分,桌面可以放置快捷图标和桌面插件,而主菜单则是所有应用的图标。将平常常用的图标放到桌面上,这样一来就可以更加快捷地操作手机了。

问题六:安卓手机桌面的设置没有了怎么办 不会没有吧!!实在找不到就下个GO桌面啥的,本人一直在用,蛮好的。

问题七:安卓怎么设置壁纸跟主屏滑动 桌面设置-----外观特效设置------壁纸显示

问题八:安卓系统如何减少桌面数量? 1、如果需要添加或删除屏幕,滑动到某个屏幕(最好是空白屏幕),使用两个手指同时按下屏幕,并收缩滑动,如图所示的大致方向。

2、如果需要删除屏幕,点击清空的屏幕上方的“X”号就可以将其删除了。

3、如果需要添加屏幕,点击新屏幕中间的“+”号就可以添加新屏幕了。

4、当然,也可以设置和调整手机的主屏幕,单击某个屏幕下方的小房子图标,就可以设置该屏幕为手机主屏幕了。

问题九:安卓手机如果默认了原机桌面,如何再切换成安卓桌面(我自己下载的安卓桌面)。 你好

在主界面点击菜单键进入设置

进入管理应用程序

进入启动器

清除默认设置

之后再进入桌面就会弹出一个选择框

选择一个你想用的,不要把设置为默认勾选就行了

问题十:安卓手机设置中文界面怎么设置??? 直接去语言里设置中文就可以了。语言翻译成英文就知道那个选项了

材料/工具:荣耀畅玩8C。

具体操作可以参考如下步骤:

一、  在手机桌面打开“设置”。

二、打开“设置”后找到“权限管理”点击进入。

三、在“权限管理”界面找到“创建桌面快捷方式”进行下一步操作。

四、最后点击需要进行操作的应用右侧的“按钮”开启该功能即可完成操作。

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/shuma/919110.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-16
下一篇2023-08-16

随机推荐

  • 研春堂蜗牛魔力白芦荟补水保湿后面乳怎么样

    你好,综合你的情况在孕期是可以使植物含有芦荟成分的护肤品的,也可用使用孕妇专用的护肤品。建议,孕期应注意休息,避免过度劳累,保持心情舒畅,多吃富含维生素及高蛋白的食物,避免寒凉辛辣刺激性食物,定期孕期检查。1、《沁园春·再到期思卜筑》宋代:

    2024-04-15
    55800
  • 妮维雅洁面慕斯好用吗 零皂基的洗面奶

    妮维雅新推出的这个洁面慕斯一上市就受到了很多人的喜欢和追捧,连女星张钧甯都为他站台,这是一款0皂基,纯氨基酸配方的洗面奶,对皮肤无刺激,很温和。敏感肌和痘痘肌以及孕妈妈们都可以放心的使用哦。妮维雅洁面慕斯好用吗一、0皂基,氨基酸配方

    2024-04-15
    51100
  • 金玉人生两全保险(分红型)

    保险小编帮您解答,更多疑问可在线答疑。民生金玉满堂两全保险D款(分红型)是民生人寿在银保渠道推出的一款两全分红型寿险,投保范围广,保障时间长,一次性交费无压力。产品点评在保障方面涵盖了疾病身故、意外身故和生存保险金以及满期保险金,非常全面。

    2024-04-15
    48600
  • 急~~哪位香水达人帮我推荐一款男士香水~要附价格哦!!答的好继续追加分!!

    如果是要比较中性的就是CK,但是CK ONE 和BE都太大众化了。你可以考虑一吓CK IN2U的特别版,先去妍丽或sephora之类的地方试香:1CK IN2U Heat for him 09限量版男香 淘宝价180 100ml前味:梨、芫

    2024-04-15
    42200
  • 《开始推理吧》白宇骑机车出场,镜头特写,是不是非常帅气呢?

    《开始推理吧》这档节目已经开播了,白宇也参与了这档综艺节目的录制,在出场的时候白宇也是骑着机车出场,特别的帅气,非常酷炫的一个出场,镜头特写非常的完美,白宇的这个造型确实非常的帅气,这个出场也惊艳到了很多人,没有想到白宇还会骑机车,这也是特

    2024-04-15
    38800
  • 精华露和精华乳液先用哪个

    一般来说,精华露和精华乳液的使用顺序是先使用精华露,再使用精华乳液。精华露是一种比较轻盈的质地,通常含有高浓度的活性成分,用于深层滋润皮肤。而精华乳液则是一种更滋润的质地,可以提供长效的保湿效果。然而,这并不代表在洁面后必须立即使用精华露,

    2024-04-15
    49600
  • 神仙水和清莹露外观怎么区别?

    神仙水和清莹露区别:1、外观不同神仙水是高机能水,颜色比较黄,而清莹露是一种化妆水或清洁水,颜色比较清透,呈透明色。2、功效不同神仙水能够补充皮肤水分,调节皮肤酸碱指数和水油平衡。使用神仙水能够使皮肤舒缓,消除青春痘和闭口,使皮肤平滑。清莹

    2024-04-15
    43000

发表评论

登录后才能评论
保存