zoukankan      html  css  js  c++  java
  • Android -- 创建桌面快捷方式

    代码                                                                                   

    /**
         * 
         * 返回添加到桌面快捷方式的Intent:
         * 
         * 1.给Intent指定action="com.android.launcher.INSTALL_SHORTCUT"
         * 
         * 2.给定义为Intent.EXTRA_SHORTCUT_INENT的Intent设置与安装时一致的action(必须要有)
         * 
         * 3.添加权限:com.android.launcher.permission.INSTALL_SHORTCUT
         */
    
        public Intent getShortcutToDesktopIntent(Context context) {
            Intent intent = new Intent();
            intent.setClass(context, context.getClass());
            /* 以下两句是为了在卸载应用的时候同时删除桌面快捷方式 */
            intent.setAction("android.intent.action.MAIN");
            intent.addCategory("android.intent.category.LAUNCHER");
    
            Intent shortcut = new Intent(
                    "com.android.launcher.action.INSTALL_SHORTCUT");
            // 不允许重建
            shortcut.putExtra("duplicate", false);
            // 设置名字
            // shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME,context.getString(R.string.app_name));
            shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, "11111");
            // 设置图标
            shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
                    Intent.ShortcutIconResource.fromContext(context,
                            R.drawable.youtube));
            // 设置意图和快捷方式关联程序
            shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
    
            return shortcut;
        }

    权限                                                                                   

    <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>

    调用                                                                                   

    public void click1(View v) {
            Intent intent = this.getShortcutToDesktopIntent(MainActivity.this);
            sendBroadcast(intent);
        }

    我是天王盖地虎的分割线                                                             

  • 相关阅读:
    20165205 2017-2018-2 《Java程序设计》实验三 敏捷开发与XP实践
    20165205 2017-2018-2 《Java程序设计》第八周学习总结
    20165205 2017-2018-2《Java程序设计》结对编程一 第二周总结
    20165104 第一周学习心得
    Linux安装及命令入门
    做中学learning by doing个人感想
    我所期望的师生关系
    2018-2019 20165235《信息安全系统设计基础》第三周学习总结
    20165235 缓冲区溢出漏洞实验
    2018-2019-20165235 《信息安全系统设计基础》第二周学习总结
  • 原文地址:https://www.cnblogs.com/yydcdut/p/3908615.html
Copyright © 2011-2022 走看看