×
Namespaces

Variants
Actions
(Difference between revisions)

Mobile Application State Management

From Nokia Developer Wiki
Jump to: navigation, search
hamishwillee (Talk | contribs)
m (Hamishwillee - Bot addition of Template:ArticleMetaData)
hamishwillee (Talk | contribs)
m (Hamishwillee - Bot update - Fix metadata etc)
Line 1: Line 1:
{{ArticleMetaData
+
{{ArticleMetaData <!-- v1.2 -->
 
|sourcecode= <!-- Link to example source code e.g. [[Media:The Code Example ZIP.zip]] -->
 
|sourcecode= <!-- Link to example source code e.g. [[Media:The Code Example ZIP.zip]] -->
 
|installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) -->
 
|installfile= <!-- Link to installation file (e.g. [[Media:The Installation File.sis]]) -->
Line 6: Line 6:
 
|platform= <!-- Compatible platforms - e.g. Symbian^1 and later, Qt 4.6 and later -->
 
|platform= <!-- Compatible platforms - e.g. Symbian^1 and later, Qt 4.6 and later -->
 
|devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) -->
 
|devicecompatability= <!-- Compatible devices e.g.: All* (must have internal GPS) -->
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 -->  
+
|dependencies= <!-- Any other/external dependencies e.g.: Google Maps Api v1.0 -->
|signing=<!-- Signing requirements - empty or one of: Self-Signed, DevCert, Manufacturer -->
+
|signing= <!-- Signing requirements - empty or one of: Self-Signed, DevCert, Manufacturer -->
|capabilities=<!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. -->
+
|capabilities= <!-- Capabilities required by the article/code example (e.g. Location, NetworkServices. -->
 
|keywords= <!-- APIs, classes and methods (e.g. QSystemScreenSaver, QList, CBase -->
 
|keywords= <!-- APIs, classes and methods (e.g. QSystemScreenSaver, QList, CBase -->
|id= <!-- Article Id (Knowledge base articles only) -->
+
|language= <!-- Language category code for non-English topics - e.g. Lang-Chinese -->
|language=<!-- Language category code for non-English topics - e.g. Lang-Chinese -->
+
|translated-by= <!-- [[User:XXXX]] -->
|review-by=<!-- After re-review: [[User:username]] -->
+
|translated-from-title= <!-- Title only -->
|review-timestamp=<!-- After re-review: YYYYMMDD -->
+
|translated-from-id= <!-- Id of translated revision -->
|update-by=<!-- After significant update: [[User:username]]-->
+
|review-by= <!-- After re-review: [[User:username]] -->
|update-timestamp=<!-- After significant update: YYYYMMDD -->
+
|review-timestamp= <!-- After re-review: YYYYMMDD -->
|creationdate=20091031
+
|update-by= <!-- After significant update: [[User:username]]-->
|author=[[User:Aadhar14b]]
+
|update-timestamp= <!-- After significant update: YYYYMMDD -->
 +
|creationdate= 20091031
 +
|author= [[User:Aadhar14b]]
 
}}'''Original article published at [http://www.littlespringsdesign.com/blog/2007/Jan/design-pattern-of-the-week-state-management/ Little Spring Design] under [http://creativecommons.org/licenses/by/3.0/ Attribution 3.0]'''
 
}}'''Original article published at [http://www.littlespringsdesign.com/blog/2007/Jan/design-pattern-of-the-week-state-management/ Little Spring Design] under [http://creativecommons.org/licenses/by/3.0/ Attribution 3.0]'''
  

Revision as of 05:14, 7 May 2012

Article Metadata
Article
Created: User:Aadhar14b (31 Oct 2009)
Last edited: hamishwillee (07 May 2012)
Original article published at Little Spring Design under Attribution 3.0


Contents

Introduction

The mobile application state includes what screen is being displayed, what data the user has entered, and any user settings.

Design Guidelines

  • Save all user input except passwords.
  • To enable saving of password provide an option.
  • Discard task-related input only after the task is complete.
  • Save application state, including which screen is being displayed.
  • When re-entering the application, return the user to that state is appropriate. It might not be appropriate if the user was viewing transient data or if the application has not been used for a few days.

Example

gmaps on S60 when you refire a saved search, it re-runs it in the last location. Regardless of not having gps. Assume last info is correct unless there is a reason not to.

When Used

Application state management should be considered for any application.

Rationale

  • The user, and hence the application, is readily interruptible. The application can be interrupted at any time, by real life people, an incoming call, or a coverage hole.
  • Thus an exited application does not indicate the user's intent to end a task.

--Submitted by - Aadhar14b

117 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×