为何使用开始活动?

Sub*_*sed 15 android android-intent android-activity

我一直在查看API文档,并注意到从API级别16开始,Context类包括以下方法:

public abstract void startActivities (Intent[] intents)

我一直在谷歌搜索,试图通过它在应用程序代码,问题或文章中使用的例子来表达我的好奇心,但我还没有遇到任何问题.如果有人问过类似的问题,请告诉我.

无论如何,我很好奇何时应该/可以在应用程序代码中使用,以及这样做会带来什么(如果有的话)的好处?我个人从来没有见过这种方法,我没有把握它的实用性.任何反馈将不胜感激.

mat*_*ash 20

它很少用于应用程序代码中.我会不会说,但我不能肯定;)

但是,它可以在启动新任务时用于创建合成后端堆栈.您希望拥有一个现成的后备堆栈,以便后退键在此任务中"分层次"导航.

奇怪的是,它在文档中ContextCompat比在Context其自身中更好地解释.

如果能够,将一组活动作为合成任务堆栈启动.

在API级别11(Android 3.0/Honeycomb)中,使用后退键修改应用程序导航的建议约定已更改.后退键的行为是当前任务的本地行为,并不捕获跨不同任务的导航.浏览任务并轻松完成上一个任务是通过"最近"UI完成的,可以通过导航或系统栏上软件提供的"最近"键访问.在具有旧硬件按钮配置的设备上,可以通过长按Home键来访问最近的UI.

当从一个任务堆栈跨越到另一个后Android 3.0时,应用程序应合成新任务的后备堆栈/历史记录,以便用户可以通过重复按下后退键导航出新任务并返回到启动器.后退键不应跨任务堆栈导航.

startActivities提供了一种构建多个活动的综合任务堆栈的机制.如果系统上没有底层API,则此方法将返回false.

  • 只是将其添加为潜在更新的评论,但为深层链接添加更新(为深层链接合成新的后台堆栈):https://developer.android.com/training/implementing-navigation/temporal.html (2认同)