我希望有一个针对 Android 2.1、API 级别 7 的应用程序,当用户点击已进入的 C2DM 通知时立即启动多个 Activity 。这是我目前用来启动我的 Activity 的方法:
public static PendingIntent getActivity (Context context, int requestCode, Intent intent, int flags)
这个方法只允许我把一个 Activity 放到堆栈上。我真正想做的是使用这种方法:
public static PendingIntent getActivities (Context context, int requestCode, Intent[] intents, int flags)
此方法报告仅适用于 API 级别 11,即 Android 3.0。我不想破坏与 2.1 的向后兼容性。谁能建议我如何在不依赖 Android 3.0 的情况下实现这种效果?我试过 looking for the source到这个新方法,但它似乎还不可用。
最佳答案
您要做的是拥有一个作为警报目标的单独 Activity ,并从那里构建 Intent 堆栈,如下所示。这可能很容易概括为非常类似于“getactivities”的东西——遗憾的是它不在兼容库中。
public class AlarmActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
intent = new Intent(this, ChildActivity.class);
startActivity(intent);
finish();
}
}
关于android - 如何在 Api 级别 7 (Android 2.1) 中近似 PendingIntent getActivities?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5739595/