读书人

创造安卓桌面快捷方式

发布时间: 2013-12-02 12:00:40 作者: rapoo

创建安卓桌面快捷方式
private void createShortcut() {Intent intent = new Intent();intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");//步骤1:设置快捷方式的名称,注意系统在判断桌面的快捷方式是否重复时,是通过快捷方式的名称判断的,与图片无关。intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "捍 卫");//步骤2:设置快捷方式的图片资源. 有两种方式://第一种:EXTRA_SHORTCUT_ICON_RESOURCE:设置快捷方式的图片icon资源,要求格式为ShortcutIconResource类型。//intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, ShortcutIconResource.fromContext(this, R.drawable.android));//第二种:EXTRA_SHORTCUT_ICON:也是设置快捷方式的图片icon资源,但是要求的格式是一个bitmap类型,//并且优先于上面的EXTRA_SHORTCUT_ICON_RESOURCE.如果两者都定义以EXTRA_SHORTCUT_ICON为主。//定义一个bitmap: BitmapFactory.decodeResource(getResources(), R.drawable.atools) intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher));//防止重复创建快捷图标intent.putExtra("duplicate", false);//设置快捷方式的意图Intent shortcutIntent = new Intent(); //必须使用隐式意图或者包名类名形式启动,否则无法从快捷方式启动应用。//第一种初始化方式:通过包名和类名形式//shortcutIntent.setClassName(getPackageName(), "com.***.activity.HomeActivity");//第二种初始化方式:通过意图过滤器shortcutIntent.setAction("com.***.intent.action.HOME");shortcutIntent.addCategory(Intent.CATEGORY_DEFAULT);intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);//发送广播给系统,系统接受到这个广播就会按照设定的name和图标icon创建桌面快捷方式sendBroadcast(intent);}

?

?

读书人网 >Android

热点推荐