您的位置:首页 > 移动开发 > Android开发

Android创建桌面快捷方式和判断当前快捷方式是否已经存在

2012-12-26 10:50 651 查看
//判断桌面是否已添加快捷方式

public static boolean hasShortCut(Context context) {
String url = "";
if (android.os.Build.VERSION.SDK_INT < 8) {
url = "content://com.android.launcher.settings/favorites?notify=true";
} else {
url = "content://com.android.launcher2.settings/favorites?notify=true";
}
ContentResolver resolver = context.getContentResolver();
Cursor cursor = resolver.query(Uri.parse(url), null, "title=?",
new String[] { context.getString(R.string.app_name) }, null);
if (cursor != null && cursor.moveToFirst()) {
cursor.close();
return true;
}

return false;
}


/**

  * 创建桌面快捷方式

  *

  * @param context

  */

public static void createShortCut(Context context) {
final Intent addIntent = new Intent(
"com.android.launcher.action.INSTALL_SHORTCUT");
final Parcelable icon = Intent.ShortcutIconResource.fromContext(
context, R.drawable.touxiang); // 获取快捷键的图标
addIntent.putExtra("duplicate", false);
final Intent myIntent = new Intent(context, FirstActivity.class);//点击快捷方式要显示的东西
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "快捷方式的名字");// 快捷方式的标题,要和应用的名字一样,为了判断师傅已经创建此快捷方式
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);// 快捷方式的图标
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, myIntent);// 快捷方式的动作
context.sendBroadcast(addIntent);
}

 最后别忘了加上权限   install_shortcut
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息