我有一个应用程序,允许您创建特定活动的主页“快捷方式”.事实证明,我的一些用户将使用该应用程序,点击主键以执行其他操作,然后使用其中一个快捷方式跳回该活动.由于应用程序仍
<activity android:taskAffinity="" android:name=".IncomingShortcutActivity"> <intent-filter> <action android:name="com.example.App.Shortcut"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity>
然后,在构建快捷方式时,设置FLAG_ACTIVITY_NEW_TASK和FLAG_ACTIVITY_CLEAR_TOP标志.就像是:
// build the shortcut's intents final Intent shortcutIntent = new Intent(); shortcutIntent.setComponent(new ComponentName(this.getPackageName(), ".IncomingShortcutActivity")); shortcutIntent.putExtra(EXTRA_STOPID, Integer.toString(this.stop_id)); shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); shortcutIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); final Intent intent = new Intent(); intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent); // Sets the custom shortcut's title intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, custom_title); // Set the custom shortcut icon intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(this, R.drawable.bus_stop_icon)); // add the shortcut intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); sendBroadcast(intent);