2011.09.09(2)——— android 桌面添加快捷方式

参考:http://www.apkbus.com/android-5728-1-1.html

添加快捷方式:
private void installShortCut(){Intent shortcutIntent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));// 是否可以有多个快捷方式的副本,参数如果是true就可以生成多个快捷方式,如果是false就不会重复添加shortcutIntent.putExtra("duplicate", false);Intent mainIntent = new Intent(Intent.ACTION_MAIN);mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);// 要删除的应用程序的ComponentName,即应用程序包名+activity的名字//intent2.setComponent(new ComponentName(this.getPackageName(), this.getPackageName() + ".MainActivity"));mainIntent.setClass(this, this.getClass());shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, mainIntent);shortcutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(this, R.drawable.icon));sendBroadcast(shortcutIntent);}sendBroadcast(shortcutIntent);


权限:
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>


总不能每次进入应用 都添加一次快捷方式 所以 需要判断一下快捷方式是否已经存在

private boolean hasShortCut() {        ContentResolver resolver = getContentResolver();        Cursor cursor = resolver.query(Uri.parse("content://com.android.launcher.settings/favorites?notify=true"), null, "title=?",                        new String[] {getString(R.string.app_name)}, null);        if (cursor != null && cursor.moveToFirst()) {                cursor.close();                return true;        }        return false;}


查询权限:
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS"/> 


删除快捷方式:

private void uninstallShortcut(){System.out.println("11");Intent intent = new Intent("com.android.launcher.action.UNINSTALL_SHORTCUT");intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT,                new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER).setClass(this, this.getClass()));sendBroadcast(intent);}


权限:

<uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/>  








更多相关文章

  1. Android(安卓)Wear Preview- 为通知添加多个页面(Adding Pages to
  2. Android(安卓)记录开发中的一些问题
  3. android之RecycleView之ItemTouchHelper 处理拖拽、滑动删除
  4. AndroidManifest.xml - 【 manifest -> permission】
  5. 2011.07.05(2)——— android PopupWindow
  6. Android常见错误解析
  7. MTK Android(安卓)Driver :camera
  8. Mainfest
  9. Android(安卓)存储方式之文件存储

随机推荐

  1. Android中SQLite数据库操作(1)——使用SQL
  2. Android(安卓)高仿 频道管理----网易、今
  3. android ubuntu下NDK的开发
  4. Android中的布局管理
  5. Android SDK开发 -- TitleBar重构 (代理模
  6. Android 常用样式设置
  7. Android学习之文件存储
  8. 写在前面
  9. 关于Edittext的一些事情
  10. android EditText 属性