Android:从主屏幕删除应用程序快捷方式

时间:2013-09-23 10:49:19

标签: android

我正在尝试从主屏幕删除应用程序快捷方式。使用这两个动作:

  1. com.android.launcher.action.INSTALL_SHORTCUT
  2. com.android.launcher.action.UNINSTALL_SHORTCUT
  3. 它对我来说很完美,但是当我将图标从应用列表拖到主屏幕时UNINSTALL_SHORTCUT不起作用。那么,这两种方法之间是否存在差异以及系统在每种情况下的表现如何?

1 个答案:

答案 0 :(得分:0)

private void deleteShortCut(Context context) {

    Intent shortcutIntent = new Intent(Intent.ACTION_MAIN);
    shortcutIntent.setClassName("com.example.androidapp", "SampleIntent");
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    shortcutIntent.putExtra("someParameter", "HelloWorld");

    Intent removeIntent = new Intent();
    removeIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
    removeIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "ShortcutName");
    removeIntent.putExtra("duplicate", false);

    removeIntent
            .setAction("com.android.launcher.action.UNINSTALL_SHORTCUT");       
    context.sendBroadcast(removeIntent);
}

试试这个。