In the Android documentation it says:
In the case of the Back button, you should make navigation more predictable by inserting into the task's back stack the complete upward navigation path to the app's topmost screen. This allows users who've forgotten how they entered your app to navigate to the app's topmost screen before exiting.
- How could somebody forget what he/she did one step before?
As an example, Gmail's Home screen widget has a button for diving directly to its compose screen. Up or Back from the compose screen would take the user to the Inbox, and from there the Back button continues to Home.
This explanations do not harmonize with following statements in the documentation:
The Up button is used to navigate within an app based on the hierarchical relationships between screens.
The system Back button is used to navigate, in reverse chronological order, through the history of screens the user has recently worked with. It is generally based on the temporal relationships between screens, rather than the app's hierarchy.
According to the documentation, depending on the case, the back button could also not only navigate the user back trough the history of screens, but also act as the up button, showing a new activity.
This all is REALLY confusing, wouldn't it be better to use the back key to always get chronologically back?