Android编程实现创建,删除,判断快捷方式的方法
本文实例讲述了Android编程实现创建,删除,判断快捷方式的方法。分享给大家供大家参考,具体如下:
/** * 为程序创建桌面快捷方式 ,这样写,在程序卸载的时候,快捷方式也会一并删除 */ private void addShortcut() { Intent shortcutIntent = new Intent( "com.android.launcher.action.INSTALL_SHORTCUT"); // 快捷方式的名称 shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name)); shortcutIntent.putExtra("duplicate", false); // 不允许重复创建 /* * shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent( * getApplicationContext(), SplashActivity.class)); */ // 注意: ComponentName的第二个参数必须加上点号(.),否则快捷方式无法启动相应程序 ComponentName comp = new ComponentName(this.getPackageName(), this.getPackageName() + "." + this.getLocalClassName()); Intent intent = new Intent(Intent.ACTION_MAIN); intent.setAction("android.intent.action.MAIN"); intent.addCategory("android.intent.category.LAUNCHER"); shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent.setComponent(comp)); // 快捷方式的图标 ShortcutIconResource iconRes = Intent.ShortcutIconResource.fromContext( this, R.drawable.icon_launcher); shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes); sendBroadcast(shortcutIntent); } //判断是否已经创建快捷方式 private boolean hasShortcut() { boolean isInstallShortcut = false; final ContentResolver resolver = this.getContentResolver(); final String AUTHORITY; if (android.os.Build.VERSION.SDK_INT < 8) { AUTHORITY = "com.android.launcher.settings"; } else { AUTHORITY = "com.android.launcher2.settings"; } final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/favorites?notify=true"); Cursor c = resolver .query(CONTENT_URI, new String[] { "title", "iconResource" }, "title=?", new String[] { this.getString(R.string.app_name).trim() }, null); if (c != null && c.getCount() > 0) { isInstallShortcut = true; } return isInstallShortcut; }
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。
赞 (0)