Developers who lack the time or inclination to do this will get frustrated with newer environments that break their existing mental model. This requires more emphasis on application design, focusing on business goals, and not sticking with an implementation model tied to a previous application environment. Same thing with Android, and to a lesser extent, iPhone (and possibly WebOS). Most Web applications don't force the user to log out, but rather implicitly log the user out after a period of inactivity. Similarly, there is a growing movement to try to eliminate the notion of "terminating" an app. Android apps generally don't force users to think of files. iPhone apps typically don't force users to think of files. Most Web applications don't force users to think of files. This means that you can see trends in environments as new ones arise and others get buried.įor example, there is a growing movement to try to eliminate the notion of the "file". No two application environments are the same, by definition. Users generally don't need anything else, for properly-written applications, any more than they need a "quit" option for using Web applications. iPhone is a bit different, in that it only presently allows one thing to run at a time (with a few exceptions), and so the act of leaving implies a fairly immediate termination of the app.Īs everybody else told you, users (via BACK) or your code (via finish()) can close up your currently-running activity. In all of those, users don't "terminate" anything - they just leave. Or WebOS, if I understand their model correctly (haven't had a chance to play with one yet). It finishes the activity that was on-screen when the user pressed the BACK button. Pressing the BACK button does not "kill the app". Either check updates on start or check updates totally asynchronously (e.g., via a scheduled task), never on exit. For all you know, the reason your application is being "exited" is because the OS is shutting down, and then your update process will fail mid-stream. That is a mistake on any operating system. Usually, it is because they hold onto login credentials, rather than forcing users to log in every time manually. There are many iPhone and Android applications that deal with this. Use a scheduled task (via AlarmManager) to update your data for maximum reliability. I don't know what "lists with tasks that always should be there" means, but the "data being PUSHed to the device" is a pleasant fiction and should not be done by activity in any case. IPhone users are much the same way, in that pressing the iPhone button does not necessarily "feel" like the app was terminated since many iPhone apps pick up where the user left off, even if the app really was shut down (since iPhone only allows one third-party app at a time, at present). Those users simply don't think about "terminating" the Android app, any more than they think about "terminating" a Web page or "terminating" a thermostat. Millions of people are perfectly happy with the model where the environment closes up the application as needed. I have no intention of changing your mind - rather, these are here for others who come to read this post in the future. This will eventually get to your question, but I first want to address a number of issues you raise in your various comments to the various answers already given at the time of this writing. Put something like the following code in a file named custom_button.xml and then set in your button view: I discovered that this can all be done in one file fairly easily.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |