吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3554|回复: 3
收起左侧

[其他转载] 安卓8.0 创建桌面快捷 (兼容版) 源码

[复制链接]
djwdj 发表于 2018-1-23 21:20
本帖最后由 djwdj 于 2018-1-24 10:43 编辑

废话不多说,直上代码

public void addShortcut(String name,int icon,Intent intent) {
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                        ShortcutManager scm = (ShortcutManager) getSystemService(SHORTCUT_SERVICE);
                        scm.requestPinShortcut(new ShortcutInfo.Builder(this, n)
                                                                   .setIcon(Icon.createWithResource(this, icon))
                                                                   .setShortLabel(name)
                                                                   .setIntent(intent)
                                                                   .build(), null);
                } else {
                        Intent add = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
                        add.putExtra("duplicate", false);
                        add.putExtra(Intent.EXTRA_SHORTCUT_NAME, name);
                        add.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
                                                                           Intent.ShortcutIconResource.fromContext(this, icon));
                        add.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);


                        sendBroadcast(add);
                }
        }


调用方式:
addShortcut("设置",R.drawable.ic_launcher,new Intent(Settings.ACTION_SETTINGS))
快捷名称+快捷图标+快捷Intent

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Bad丶Boy 发表于 2018-1-23 21:54
系统呢?
 楼主| djwdj 发表于 2018-1-24 01:45
本帖最后由 djwdj 于 2018-1-24 10:44 编辑

        void a(String n, int l, Intent i)
        {
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O)
                        getSystemService(ShortcutManager.class)
                                .requestPinShortcut(new ShortcutInfo.Builder(this, n)
                                                                        .setIcon(Icon.createWithResource(this, l))
                                                                        .setShortLabel(n)
                                                                        .setIntent(i)
                                                                        .build(), null);
                else sendBroadcast(new Intent("com.android.launcher.action.INSTALL_SHORTCUT")
                                                   .putExtra(Intent.EXTRA_SHORTCUT_NAME, n)
                                                   .putExtra(Intent.EXTRA_SHORTCUT_ICON,
                                                                         BitmapFactory.decodeResource(getResources(), l))
                                                   .putExtra(Intent.EXTRA_SHORTCUT_INTENT, i));
        }
藤原拓海. 发表于 2018-2-10 12:03 来自手机
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 13:49

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表