2

A general question regarding tombstoning WP7 applications. What do you think a users expectations are? And what level of tombstoning support are you providing in your application?

For example, if you have an application that navigates across multiple pages, would a user returning to your tombstoned application expect it to display the last page they viewed?

If so, what if the last page they viewed was a pivot? would they expect it to be at the same location / pivot-page?

Thanks.

Derek Lakin
  • 16,179
  • 36
  • 51
ColinE
  • 68,894
  • 15
  • 164
  • 232
  • 1
    For reference, asking what people are doing in their own programs is very subjective and something there can never be a definitive answer for. x-ref: http://stackoverflow.com/faq – Matt Lacey Jan 21 '11 at 12:49

3 Answers3

5

Tombstoning can occur under a number of circumstances (including something as simple as answering a phone call) and so your application should appear to be in exactly the same state (or as close to it) as when the user last saw your application.

The operating system handles which page to load for you and the previous page back stack is retained (assuming that you are using standard page navigation within your application). If the page loaded on activation has a Pivot control in it, or other control that supports selection, then yes, the user's selection should be remembered on deactivation and restored on activation.

Charles Petzold's book Programming Windows Phone 7 has a section that covers this in chapter 6. Kevin Marshall has a good blog post that covers WP7 serialization; for the best performance you should use binary serialization.

Matt Lacey
  • 65,560
  • 11
  • 91
  • 143
Derek Lakin
  • 16,179
  • 36
  • 51
1

The whole idea behind tombstoning is that the user gets the perceived functionality of a multi-window environment, i.e. when they switch away from an app and then back to it the state is (largely) unchanged. As you how much functionality you include, that really is up to you but I for one find it frustrating when an app I haven't unloaded forces me to 'restart' my activity with it.

Lazarus
  • 41,906
  • 4
  • 43
  • 54
1

The recommendation is that on returning from a tombstoned state, you should give the impression that nothing has changed and your app is in exactly the state it was when the user left. There are valid occassions to break this rule but they are very much the exception, rather thna the rule. Think very carefully about the user experience if you want to break this rule.

Apps I've used which don't do this come across as frustrating and as though the development was lazy. In turn this makes me* think that they don't fully understand the platform and how to create a good experience. In turn, this make me think I'm more likely to experience errors or bugs in the app.

*-I'm very much NOT a typical user but I think this is still worth considering.

Matt Lacey
  • 65,560
  • 11
  • 91
  • 143