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

android桌面快捷方式跳转到指定activity

2015-06-05 18:32 309 查看
AndroidManifest.xml 应用主入口配置:

<activity
android:name="com.*.cust.contacts.MainActivity"
android:exported="true"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<!-- 自定义的action,通过自定义的action可以应用内调用 -->
<action android:name="*.intent.action.SHORTCUT" />

<category android:name="android.intent.category.LAUNCHER" />
<!-- 必须加上这个,否则无法直接使用自定的action -->
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>

创建快捷方式:
// 自定义action
Intent intent = new Intent("*.intent.action.SHORTCUT");
Bundle bundle = new Bundle();
// 可以根据传递参数执行相应操作
bundle.putString("needgoto", "*activity");
intent.putExtras(bundle);
// 创建桌面快捷方式
Intent shortcutintent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
// 是否允许重复创建
shortcutintent.putExtra("duplicate", true);
// 需要显示的名称
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name_1));
// 快捷图片
Parcelable icon = Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.ic_launcher);
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);
// 点击快捷图片,运行的程序主入口
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
// 发送广播执行操作
sendBroadcast(shortcutintent);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息