Yeah I will certainly agree that this is a bit of a mess -- it was unfortunately the result of a lot of continual iteration on the UI (often of different apps independently), leading to new feature requests each time, causing an every growing number of options. :/
We are working on cleaning up and better formalizing the overall navigation model, but that will be an ongoing process. For example in Cupcake we have finally laid down some basic rules for notifications where pressing back should always return you to whatever your were immediately previously doing, and I believe all of the standard apps now follow this. As far as contacts goes, though, this is actually intentional -- some apps (like contacts and settings) want to put the user back to their front door when relaunched from home, so they set the option to do that. This is actually a "desired" inconsistency. (And something you may not know -- if you select one of these apps from the long-press-on-home task switcher, this will bring it to the foreground without clearing it... I would like to make this level of task switching more discoverable and integrated with the core UI.) On Thu, May 7, 2009 at 1:41 PM, Mike Hearn <mh.in.engl...@gmail.com> wrote: > > > Can someone educate me about the rationale behind Android tasks? I'm > > also curious to know the thought process behind their design when they > > were originally conceived? > > I think the problem they solve is that it's hard to have a "multi- > tasking" OS when only one thing can be on the screen at once. So the > idea of tasks is that you can switch quickly between them, and they > preserve your state in the context of that application: > > Maps -> View Business Details > Contacts -> View Contact -> Edit Contact > > Now if am editing a contact and want to do something else like view > business details, I can go back home, press the Maps icon, do > whatever, and then use home to press contacts and arrive back at the > edit contact screen. > > I guess there are a few problems with the current implementation > though: it's quite complicated, and there's no real way for users to > learn how it works. The "obvious" mental model is of a linear stack of > activities, but that's not what actually happens so you get things > like pressing back on the home screen does not actually take you back. > And then there is a lack of guidelines around when to use the activity > modes - as you have found. And finally the built-in apps do use the > activity modes inconsistently. For instance my example is wrong > because the contacts app does reset the task stack. > > I think this stuff will shake out with time. Better animations can > help users figure out the application model. UI guidelines will help > developers. Hopefully the built-in apps will either become consistent > or at least call out in their manifests why they use certain > attributes so people can learn from them. > > > > > -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~----------~----~----~----~------~----~------~--~---