Android工具类之创建删除快捷图标
来源:互联网 发布:驾驶证ps软件 编辑:程序博客网 时间:2024/05/17 00:11
/** * 创建删除快捷图标 * <p/> * 需要权限: com.android.launcher.permission.INSTALL_SHORTCUT * com.android.launcher.permission.UNINSTALL_SHORTCUT */public final class ShortCutUtil { /** * Don't let anyone instantiate this class. */ private ShortCutUtil() { throw new Error("Do not need instantiate!"); } /** * 检测是否存在快捷键 * * @param activity Activity * @return 是否存在桌面图标 */ public static boolean hasShortcut(Activity activity) { boolean isInstallShortcut = false; final ContentResolver cr = activity.getContentResolver(); final String AUTHORITY = "com.android.launcher.settings"; final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/favorites?notify=true"); Cursor c = cr.query(CONTENT_URI, new String[]{"title", "iconResource"}, "title=?", new String[]{activity.getString(R.string.app_name).trim()}, null); if (c != null && c.getCount() > 0) { isInstallShortcut = true; } return isInstallShortcut; } /** * 为程序创建桌面快捷方式 * * @param activity Activity * @param res res */ public static void addShortcut(Activity activity, int res) { Intent shortcut = new Intent( "com.android.launcher.action.INSTALL_SHORTCUT"); // 快捷方式的名称 shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, activity.getString(R.string.app_name)); // 不允许重复创建 shortcut.putExtra("duplicate", false); Intent shortcutIntent = new Intent(Intent.ACTION_MAIN); shortcutIntent.setClassName(activity, activity.getClass().getName()); shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); // 快捷方式的图标 Intent.ShortcutIconResource iconRes = Intent.ShortcutIconResource.fromContext( activity, res); shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes); activity.sendBroadcast(shortcut); } /** * 删除程序的快捷方式 * * @param activity Activity */ public static void delShortcut(Activity activity) { Intent shortcut = new Intent( "com.android.launcher.action.UNINSTALL_SHORTCUT"); // 快捷方式的名称 shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, activity.getString(R.string.app_name)); String appClass = activity.getPackageName() + "." + activity.getLocalClassName(); ComponentName comp = new ComponentName(activity.getPackageName(), appClass); shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent( Intent.ACTION_MAIN).setComponent(comp)); activity.sendBroadcast(shortcut); }}
0 0
- Android工具类之创建删除快捷图标
- 创建,删除快捷图标shortcut android
- 创建,删除快捷图标shortcut android
- Android创建和删除快捷图标
- 创建,删除快捷图标shortcut android .
- android 创建的删除快捷图标
- Android创建快捷图标
- Android 如何在Launcher桌面创建或者删除快捷图标
- android 创建快捷图标demo
- Android 创建桌面快捷图标
- Android_创建和删除快捷图标
- Android学习之 创建和删除桌面快捷…
- android应用创建桌面快捷图标
- android 如何创建快捷小图标
- Android应用创建桌面快捷图标
- 创建快捷图标
- 创建桌面快捷图标
- 创建快捷图标
- centos lvs+keepalived+mysql实现mysql数据库热备主主复制
- ebs Start Page
- LeetCode Oj 290. Word Pattern
- 【jzoj4603】【颜料大乱斗】【线段树】
- L2-003. 月饼
- Android工具类之创建删除快捷图标
- 基本数据类型总结
- opencv-载入一幅图像并进行平滑处理
- HOW TO RUN YOUR WEB SERVER AND MQTT WEBSOCKETS BROKER ON THE SAME PORT
- 基本设计模式:单例模式和工厂模式代码实现
- android SQL 模糊查询
- 游泳池 (Standard IO)
- web service开发 java
- Java类的构造器几个注意的点