- Phones don't have much real estate, both in terms of screen size, keyboard, ... etc. The entire user experience is different, and you have to really put yourself in the user's mindset. This means that you can't have complicated and overly busy user UIs. The layout should be simple and clean. Also, the UI should be transition based. What I mean here is that in order to do something (like build a fantasy league team), don't try to have everything on one screen, the process should be like a wizard, guiding you through the process and allowing each process to be only a few button presses or clicks. That way the user isn't forced to scroll or navigate around using only their touch pad or D-pad. Of course, this is easier said than done.
- Your resources are limited. CPU, memory, battery life, and bandwidth. My first immediate realization of this, is the fact that the data I send to my mobile device is best handled if it's little pieces at a time, since network connectivity on a moving device is always subject to lost packets from losing connectivity. It also helps with suggestion 1, if I have a transition based UI/experience, then I don't have to send a lot of data for each request, just enough to satisfy the small step the user is currently undertaking.
- If you come from programming on the web, certain controls like Spinner don't operate like select boxes. For example, Spinners (and most UI controls), have only one data value associated with it (i.e. the text is displays), and don't have ability to store secondary value components (i.e. name/value pairs like that in select/option boxes).
Tuesday, July 22, 2008
Mobile Device Programming Lesson 1 - It's a Mobile Device Stupid
Okay, so we started getting our hands a little dirty with this project of ours and I've come to realize 2 things (for now):
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment