–> 
 
<receiver
android:name=“com.android.launcher2.InstallShortcutReceiver”
android:permission=“com.android.launcher.permission.INSTALL_SHORTCUT”>

可以看出,要在桌面上创建快捷方式就需要权限了:

android:permission=”com.android.launcher.permission.INSTALL_SHORTCUT。

所以在我们的manifest.xml文件中,我们需要加入下面这段话:

下面就是代码层的实现:

假如我在一个activity中创建一个创建快捷方式的方法:createShortCut();

public void createShortCut(){
//创建快捷方式的Intent
Intent shortcutintent = new Intent(“com.android.launcher.action.INSTALL_SHORTCUT”);
//不允许重复创建
shortcutintent.putExtra(“duplicate”, false);
//需要现实的名称
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.shortcutname));
//快捷图片
Parcelable icon = Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.icon);
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);
//点击快捷图片,运行的程序主入口
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(getApplicationContext() ,
EnterActivity.class));
//发送广播。OK
sendBroadcast(shortcutintent);
}

二、长按桌面弹出的桌面快捷方式创建

如何在添加到一个SHORTCUTS列表中,就是你长按桌面弹出来的那个东东。

首先在注册activity时,需要添加一个action为android.intent.action.CREATE_SHOERTCUT的intentFilter.如下所

示:

接下来就是就是设置快捷方式的图标、名称、事件等属性。这里图表的生成,android里提供了专门的方法来生成。