Android shortcut and delete shortcut implementation methods
- 2020-06-23 01:52:43
- OfStack
/**
*
* Create shortcuts
* @param map Shortcut icon
* @param appName Shortcut title
* @param appUrl Shortcut to open the address
* @param iconUrl Shortcut icon address
*
* */
public static void createShortcut(Context activity ,Bitmap map ,String appName ,String appUrl ,String iconUrl){
Intent shortcut = new Intent(
"com.android.launcher.action.INSTALL_SHORTCUT");
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME,appName);
shortcut.putExtra("duplicate", false);// Sets whether to duplicate creation
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW) ;
// intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) ;
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK) ;
intent.setClass(activity, WebViewActivity.class);// Set up the first 1 A page
intent.putExtra("keyword", appUrl);
intent.putExtra("appName", appName) ;
intent.putExtra("iconUrl", iconUrl) ;
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON, map);
activity.sendBroadcast(shortcut);
}
/**
*
* Delete shortcut
* @param shortcutName app The name
* @param className The absolute path is as follows: getPackageName() + ".WebViewActivity"
*
* */
public static void removeShortcut(Context cxt, String shortcutName, String className) {
Intent shortcutIntent = new Intent(Intent.ACTION_VIEW);
shortcutIntent.setClassName(cxt, className);
Intent intent = new Intent("com.android.launcher.action.UNINSTALL_SHORTCUT");
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, shortcutName);
cxt.sendBroadcast(intent);
}