大家看到微信或是淘宝中出现过类似的效果,例如在微信中有发送联系人到桌面,淘宝中有发送店家到桌面,点击快捷方式直接进入相应地联系人或是淘宝店面,其实是用了Android创建快捷方式的功能,具体的代码分析如下:
首先需要在Android Mainifest 文件中声明如下两个主要用于跨界方式操作的权限:
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
<uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT" />
其次在代码中需要如下写:
// 安装的Intent
Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
// 快捷名称
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, tName);
// 快捷图标是允许重复
shortcut.putExtra("duplicate", false);
Intent shortcutIntent = new Intent(Intent.ACTION_MAIN);
shortcutIntent.putExtra("tName", tName);
shortcutIntent.setClassName("com.hession.shortcut", "com.hession.shortcut.MainActivity");
shortcutIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
// 快捷图标
ShortcutIconResource iconRes = Intent.ShortcutIconResource.fromContext(this, R.drawable.shortcut);
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes);
// 发送广播
sendBroadcast(shortcut);
Ok,就是这么简单,下面是我运行的效果图,到家可以看下
代码下载地址:点击打开链接