Android Advanced Techniques

37
ANDROID ADVANCED TECHNIQUES Eugeniu Arbuleac @arbuleac [email protected] Andrei Catinean @electryc [email protected]

description

Me and my friend Eugeniu Arbuleac had the pleasure to speak about some advanced techniques in developing Android apps at the GDG Timisoara Inaugural Event.

Transcript of Android Advanced Techniques

Page 1: Android Advanced Techniques

ANDROID ADVANCED TECHNIQUESEugeniu [email protected]@gmail.com

Andrei [email protected]@gmail.com

Page 2: Android Advanced Techniques

APPLICATION

INTELLIGENT

SMOOTH

INVISIBLE

EFFICIENT

RELIABLE

FRESH

Page 3: Android Advanced Techniques

FRESHNESS

Page 4: Android Advanced Techniques

FRESHNESS

Fresher - more battery drain

Page 5: Android Advanced Techniques

FRESHNESS

Fresher - more battery drain Location update

Page 6: Android Advanced Techniques

FRESHNESSLOCATION UPDATE

Use Passive Location Provider

Page 7: Android Advanced Techniques

FRESHNESSLOCATION UPDATE

Use Passive Location Provider

String passProvider = LocationManager.PASSIVE_PROVIDER;locManager.requestLocationUpdates(passProvider,minTime, minDistance, locListener);

Page 8: Android Advanced Techniques

FRESHNESSLOCATION UPDATE

Use Passive Location Provider

Location listener + Broadcast intents => getting location when your application is not running

Page 9: Android Advanced Techniques

FRESHNESSLOCATION UPDATE

General flow : get providers get accuracy set current data

Page 10: Android Advanced Techniques

FRESHNESSLOCATION UPDATE

General flow : get providers get accuracy set current data

Monitor the best provider !

Page 11: Android Advanced Techniques

FRESHNESS

Fresher - more battery drain Location updateData update

Page 12: Android Advanced Techniques

FRESHNESSDATA UPDATE

How frequently do you do this ?

Page 13: Android Advanced Techniques

FRESHNESSDATA UPDATE

How frequently do you do this ?

Alarms Wakeup vs. NonWakeup

Page 14: Android Advanced Techniques

FRESHNESSDATA UPDATE

How frequently do you do this ?

Alarms Wakeup vs. NonWakeup

twice a day every 30 min

Page 15: Android Advanced Techniques

FRESHNESSDATA UPDATE

Connectivitywithout: stop alarms

poor: less frequent updates

Battery Managercharged: go update

not charged: less updates

Page 16: Android Advanced Techniques

INTELLIGENCE

Page 17: Android Advanced Techniques

INTELLIGENCE

Give as many suggestions as you can

Page 18: Android Advanced Techniques

INTELLIGENCE

Give as many suggestions as you can

AccountManager Autocompletion

Page 19: Android Advanced Techniques

INTELLIGENCE

Give as many suggestions as you can

AccountManager Autocompletion

Sync devices

Page 20: Android Advanced Techniques

INTELLIGENCE

Give as many suggestions as you can

AccountManager Autocompletion

Sync devices Backup your application data

Page 21: Android Advanced Techniques

SMOOTHNESS

Page 22: Android Advanced Techniques

SMOOTHNESS

Fast, responsive and consistent

Page 23: Android Advanced Techniques

SMOOTHNESS

Fast, responsive and consistent

Move all your tasks to background - use AsyncTask and Loader APIDroidcon Bucharest 2012 Roman Mazur keynote - http://goo.gl/XR5HU

Page 24: Android Advanced Techniques

INVISIBILITY

Page 25: Android Advanced Techniques

INVISIBILITY

“Queue and Send” Pattern

check(connection);

if(!connected){!! addQueue;!} else if(!action){! !! ! addQueue;} !retry later;

Page 26: Android Advanced Techniques

INVISIBILITY

Stick to the design guidelines - use standard patterns d.android.com/design

Page 27: Android Advanced Techniques

INVISIBILITY

LESS is MORE more functionality in less actions

Stick to the design guidelines - use standard patterns d.android.com/design

Page 28: Android Advanced Techniques

INVISIBILITY

Droidcon Bucharest 2012 Android UI/UX - Best Practices : http://goo.gl/vJBSU

Page 29: Android Advanced Techniques

EFFICIENCY

Page 30: Android Advanced Techniques

EFFICIENCYLow battery draining

Page 31: Android Advanced Techniques

EFFICIENCYHow cell radio works

Page 32: Android Advanced Techniques

EFFICIENCYHow cell radio works

Page 33: Android Advanced Techniques

EFFICIENCY

Bundle Cache Intelligent updates

Page 34: Android Advanced Techniques

RELIABILITY

image provided by androidify.com

Test your applications

Page 35: Android Advanced Techniques

WRAPPING UP

Build your FRESH, INTELLIGENT and SMOOTH apps

Remain invisible

Efficiency is your main aim

Don’t forget about being reliable

Page 36: Android Advanced Techniques

QUESTIONS ?