android桌面快捷方式的创建和查询

[size=medium]桌面快捷方式的创建[/size]

// 内置的在2.1上不行
// Intent intent = new Intent(Intent.ACTION_CREATE_SHORTCUT);
Intent intent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
intent.putExtra("duplicate", false);
ComponentName comp = new ComponentName(getApplicationContext(), Shortcut.class);
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT,
new Intent(Intent.ACTION_MAIN).setComponent(comp));
ShortcutIconResource res = Intent.ShortcutIconResource.fromContext(
getApplicationContext(), R.drawable.icon);
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, res);
sendBroadcast(intent);



[size=medium]桌面快捷方式的查询[/size]

private static final Uri CONTENT_URI =
Uri.parse("content://com.android.launcher.settings/favorites?notify=true");

private static final String[] PROJECTION = {
"_id",
"title",
"iconResource"
};

private boolean hasShortCut() {
ContentResolver resolver = getContentResolver();
Cursor cursor = resolver.query(CONTENT_URI, PROJECTION, "title=?",
new String[] {getString(R.string.app_name)}, null);

if (cursor != null && cursor.moveToFirst()) {
cursor.close();
return true;
}

return false;
}


[size=medium]快捷方式的删除(2.1上不行),当程序删除时,系统会自动帮我们把快捷方式删除[/size]

Intent intent = new Intent("com.android.launcher.action.UNINSTALL_SHORTCUT");
intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
ComponentName comp = new ComponentName(getApplicationContext(), Shortcut.class);
intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT,
new Intent(Intent.ACTION_MAIN).setComponent(comp));
sendBroadcast(intent);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值