Sep 23

The Basics

  • Design of your Application
  • Reduce your application memory footprint
  • App Responsiveness
  • Security Restrictions
  • Power Consumption

Design Best Practices

Different interaction Paradigm than Desktop

Users only interact with your application for a few moments (take the phone out and put it away). You need to be able to get at information fast.

Limited Real Estate for Screen

  • Keep it simple and organized
  • App should address a specific user need
  • Pushing the Windows key “quits” application.

Memory

  • Limited Memory available, no virtual memory
  • Images are “vectorized” reducing size and making performance better via the GPU
  • Make sure your application doesn’t leak or swallow memory
    • Identify all user scenarios
    • Test every milestone and release
  • Test with real device whenever possible.
  • Release memory whenever possible (close up resources you aren’t using)
  • Load resources only when the user decides to view something..
    • Purge off-screen views, caches, any stored (cached media)

Responsiveness

  • Only load critical resources so that application is available to the application.

Security

  • Sandboxing
  • Secure coding practices
    • Key chaining
    • Certificate, Key, and Trust related functions/services.
    • Cryptographic services

Power

Start and stop location services as needed to conserve power (such as the GPS)

Only send and receive to the network when absolutely necessary.