2. who (the hell) am I?!?
Java, Flex, GWT, iOS, Android developer
Android Developer at Intel
Eclipse Committer
GDG (GTUG) Istanbul Organizer
Conference Speaker
Wednesday, October 9, 13
3. paranoid?!?
“is a mental disorder characterized by paranoia and
a pervasive, long-standing suspiciousness and
generalized mistrust of others. Individuals with
this personality disorder may be hypersensitive,
easily feel slighted, and habitually relate to the
world by vigilant scanning of the environment for
clues or suggestions that may validate their fears
or biases. Paranoid individuals are eager
observers. They think they are in danger and look
for signs and threats of that danger, potentially
not appreciating other evidence.”
Wednesday, October 9, 13
4. My Story: 1.5 Cupcake
My First Android Device!!
Wednesday, October 9, 13
5. 1.6 Donut
My First Apps!!
Wednesday, October 9, 13
18. Developers and Magic
Don’t know the trick - Muggles
Know the trick - Squib
Can do the trick - Wizard
Wednesday, October 9, 13
19. Developers and Magic
the user
Don’t know the trick - Muggles
Know the trick - Squib
Can do the trick - Wizard
Wednesday, October 9, 13
20. Developers and Magic
the user
Don’t know the trick - Muggles
Know the trick - Squib
Can do the trick - Wizard
I.T. guy
Wednesday, October 9, 13
21. Developers and Magic
the user
Don’t know the trick - Muggles
Know the trick - Squib
Can do the trick - Wizard
I.T. guy
the developer
Wednesday, October 9, 13
23. Users are (simply) users
Controller
USB
ethernet
video in?
Touch Screen
Wednesday, October 9, 13
24. Users are (simply) users
Controller
USB
ethernet
video in?
Touch Screen
Wednesday, October 9, 13
25. Users are (simply) users
Controller
USB
ethernet
video in?
Touch Screen
which one is magical??
Wednesday, October 9, 13
26. User eXperience
less is more
be invisible! just as if you’re part of the OS
splash screens
simple navigation
popups or launching the browser
forced login
extensive use of tutorials
Wednesday, October 9, 13
27. Test UX with Users
Users are not developers
nor designers!!
Rule of the magician: Consider your auidience
Wednesday, October 9, 13
28. Test UX with Users
Users are not developers
nor designers!!
Rule of the magician: Consider your auidience
Wednesday, October 9, 13
29. Test UX with Users
Users are not developers
nor designers!!
Rule of the magician: Consider your auidience
Wednesday, October 9, 13
30. Test UX with Users
Users are not developers
nor designers!!
Rule of the magician: Consider your auidience
Wednesday, October 9, 13
31. Case Study
not even one successful app order!!
Wednesday, October 9, 13
33. Design, the android way
Android has its own design, USE IT
www.developer.android.com/design
Don’t just copy from other
platforms
Wednesday, October 9, 13
36. Design, responsively!!
Let your apps scale, use
RelativeLayout, GridLayout,
LinearLayout
Let your resources scale! use 9
patch.
Never resize images. Use different
sizes (mdpi, hdpi, xhdpi...)
for adapters!!!
Draw in XML or code (gradient..)
http://developer.android.com/tools/help/draw9patch.html
Wednesday, October 9, 13
37. Design, responsively!!!
Don’t just scale! or
next time Apple
may make fun of
you!
Use Fragments
Wednesday, October 9, 13
38. Fragments
Phone
Tablet
Portrait
Landscape
Do not assume device is portrait or landscape
default orientations: Nexus7/portrait, Nexus10/landscape
Wednesday, October 9, 13
39. Control your hardware
boolean
haveCamera=getPackageManager.hasSystemFeature(
PackageManager.FEATURE_CAMERA);
boolean
haveNFC=getPackageManager.hasSystemFeature(
PackageManager.FEATURE_NFC);
boolean
haveHost=getPackageManager.hasSystemFeature(
PackageManager.FEATURE_USB_HOST);
boolean
havePhone=getPackageManager.hasSystemFeature(
PackageManager.FEATURE_TELEPHONY);
boolean
haveBarometer=getPackageManager.hasSystemFeature(
PackageManager.FEATURE_SENSOR_BAROMOTER);
http://developer.android.com/reference/android/content/pm/PackageManager.html
Wednesday, October 9, 13
40. more on design!
android tabs are at the top!
use swipe views (even in tabs)
we (already) have back button
options hard button has gone
so does soft menu button
Wednesday, October 9, 13
41. more on design!
android tabs are at the top!
use swipe views (even in tabs)
we (already) have back button
options hard button has gone
so does soft menu button
Wednesday, October 9, 13
42. more on design!
android tabs are at the top!
use swipe views (even in tabs)
we (already) have back button
options hard button has gone
so does soft menu button
Wednesday, October 9, 13
43. more on design
make use of ADT
(localization, themes,
screen sizes)
visit Android Design
work with a designer
and use stencils!
Wednesday, October 9, 13
44. more on design
make use of ADT
(localization, themes,
screen sizes)
visit Android Design
work with a designer
and use stencils!
Wednesday, October 9, 13
45. more on design
make use of ADT
(localization, themes,
screen sizes)
visit Android Design
work with a designer
and use stencils!
Wednesday, October 9, 13
47. Keep your UI responsive
Linear Layout? ok
only if not nesting
views
use Hierarchy View
to cut down
Never lock UI thread
use AsyncTask!!
make use of services
Wednesday, October 9, 13
48. Respect the Battery
You are on the list?
You are doing it wrong!!
The main job of a
phone is being a phone,
no app can change it!
unregister services and
listeners
Wednesday, October 9, 13
49. Use less network
Smaller data
less transfers
caching
*cookie model
by Reto Meier
**Making good apps great, Google I/O 2012
Wednesday, October 9, 13
50. The big Cookie Model
**Making good apps great, Google I/O 2012
Wednesday, October 9, 13
52. but how?
Cache data
Queue requests (also good for offline)
Check connection (get more data when on
wifi and again cache!)
Get needed data at once
http://developer.android.com/training/efficient-downloads
Wednesday, October 9, 13
56. Respect Users
UX
UI
Performance
there is more...
notifications!!!
Wednesday, October 9, 13
57. Feedback
Happy users don’t rate
but sad ones do...
Don’t ask user to rate you
But ask for feedback
Wednesday, October 9, 13
58. Feedback
Happy users don’t rate
but sad ones do...
Don’t ask user to rate you
But ask for feedback
Wednesday, October 9, 13
59. Feedback
Happy users don’t rate
but sad ones do...
Don’t ask user to rate you
But ask for feedback
Wednesday, October 9, 13
60. Feedback
Happy users don’t rate
but sad ones do...
Don’t ask user to rate you
But ask for feedback
Wednesday, October 9, 13
61. Feedback
Happy users don’t rate
but sad ones do...
Don’t ask user to rate you
But ask for feedback
Wednesday, October 9, 13
62. Tricks
Don’t let your app not updated
But not too often
Don’t ask hw requirements (camera, nfc...)
Always use latest sdk
But try staying compatible
Test before publishing
Wednesday, October 9, 13
63. </slides>
http://slidesha.re/ZaEbzy
Like what you see?
GDG Istanbul (every 3. or 4. Saturday)
DevFest Istanbul devfesttr.com
...and contact me :)
murat@muratyener.com
@yenerm
devchronicles.com
Wednesday, October 9, 13