Android -- 创建桌面快捷方式_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > Android -- 创建桌面快捷方式

Android -- 创建桌面快捷方式

 2014/8/14 14:58:52  我爱物联网  程序员俱乐部  我要评论(0)
  • 摘要:代码/****返回添加到桌面快捷方式的Intent:**1.给Intent指定action="com.android.launcher.INSTALL_SHORTCUT"**2.给定义为Intent.EXTRA_SHORTCUT_INENT的Intent设置与安装时一致的action(必须要有)**3.添加权限:com.android.launcher.permission.INSTALL_SHORTCUT*/publicIntentgetShortcutToDesktopIntent
  • 标签: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);
    }

我是天王盖地虎的分割线                                                             

 

  • 相关文章
发表评论
用户名: 匿名