欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Android快捷图标的创建与移除,android创建移除, /**

来源: javaer 分享于  点击 28524 次 点评:167

Android快捷图标的创建与移除,android创建移除, /**


    /**          * 添加桌面快捷方式          *           * @param view          */          public void click1(View view) {              if (isExit()) {                  Toast.makeText(getApplicationContext(), "快捷方式已经存在", 0).show();                  return;              }              // 取得图标资源              Parcelable icon = Intent.ShortcutIconResource.fromContext(                      getApplicationContext(), R.drawable.logo);              Intent intent = new Intent();              // 设置意图的动作              intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");              // 设置图标的名称              intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "LOL");              // 设置图标              intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);              // 设置意图的动作和类别              Intent intent2 = new Intent();              intent2.setAction(Intent.ACTION_MAIN);              intent2.addCategory(Intent.CATEGORY_LAUNCHER);              intent2.setComponent(new ComponentName(this, MainActivity.class));              intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent2);              sendBroadcast(intent);          }  
    /**          * 删除桌面快捷方式          *           * @param view          */          public void click2(View view) {              Parcelable icon = Intent.ShortcutIconResource.fromContext(                      getApplicationContext(), R.drawable.logo);              Intent intent = new Intent();              // 设置意图的动作              intent.setAction("com.android.launcher.action.UNINSTALL_SHORTCUT");              // 设置图标的名称              intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "LOL");              // 设置图标              intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);              // 设置意图的动作和类别              Intent intent2 = new Intent();              intent2.setAction(Intent.ACTION_MAIN);              intent2.addCategory(Intent.CATEGORY_LAUNCHER);              intent2.setComponent(new ComponentName(this, MainActivity.class));              intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent2);              sendBroadcast(intent);          }  
    /**          * 判断桌面是否已经存在快捷方式          *           * @return          */          private boolean isExit() {              Uri uri = null;              // 不同版本中的Uri不同              if (getSdkVersion() < 8) {                  uri = Uri                          .parse("content://com.android.launcher.settings/favorites");              } else {                  uri = Uri                          .parse("content://com.android.launcher2.settings/favorites");              }              String selection = "title=?";              String[] selectionArgs = new String[] { "LOL" };              Cursor cursor = getContentResolver().query(uri, null, selection,                      selectionArgs, null);              if (cursor.moveToNext()) {                  cursor.close();                  return true;              } else {                  cursor.close();                  return false;              }          }  
    /**          * 获得手机SDK的版本          *           * @return          */          private int getSdkVersion() {              return android.os.Build.VERSION.SDK_INT;          }  

需要声明的权限 <!--添加快捷方式权限--> <uses-permissionandroid:name="com.android.launcher.permission.INSTALL_SHORTCUT"/> <!--读取设置权限--> <uses-permissionandroid:name="com.android.launcher.permission.READ_SETTINGS"/> <!--删除快捷方式权限--> <uses-permissionandroid:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/>

相关栏目:

用户点评