Working within limits.
WHAT MATTERS MOST
Startup time Responsiveness to touch Memory use Battery consumption Data consumption Application size
WHY STARTUP TIME
It is the first impression, and slow startup is a common reason for abandonment.
WHAT TO KEEP OFF THE MAIN THREAD
Anything slow: network, files, database, image processing.
WHY
Blocking it freezes the interface, and the system may report the application as unresponsive.
WHAT CONSUMES BATTERY MOST
Location, particularly at high accuracy Network activity, especially frequent small requests Wake locks and background work Sensors left active
WHAT TO DO ABOUT IT
Batch network requests Use the lowest accuracy that works Release sensors when not in use Respect system scheduling for background work
WHAT CONSUMES DATA
Images at unnecessary resolution Video Frequent polling Analytics and logging
WHAT TO MEASURE
All of these, on a modest device.
WHY
Development hardware conceals every one of these problems.