Upload
lope-emano
View
666
Download
3
Embed Size (px)
Citation preview
Android Development
by Lope Emano
About the author● Android developer since 2010
● Loves open source
● Average software development skills
● Survived the "Dark Ages" of Android Development
What's this talk about?
● Basic, Advanced and useful topics
● Tools used
● The speaker's experiences
What is Android?
● Based on the linux kernel
● Dalvik Virtual Machine
● 700,000 apps as of October 2012
● Has an active open source community
● First phone sold in 2008 T Mobile G1
● Usage share
What are the tools needed?
● Eclipse IDE
● Android SDK
● Android Plugin
● Device not needed
What does an Android Project look like?● src/
Where your .java files are stored● gen/
Where your R.java file is stored● assets/
Where your raw resources are stored● bin/
Where your compiled files will be stored● res/
Where your layouts, image assets are stored
What does an Android Project look like?● res/drawable
drawable-xhdpi, drawable-hdpi, drawable-mdpi● res/layout
layouts are expressed in xml format● res/values
colors, text copies● AndroidManifest.xml
basically android's configuration file
What are the basic parts of an android app?Activity
- Android's version of a form
- Must be mentioned in AndroidManifest.xml to be invoked
- Has its own lifecycle
- Applications are made up of activities
Advanced Tools Overview
● Build Management
● ORM Mapping
● Dependency Injection
● Porting stuff from ICS to Gingerbread
● Web tools
Build ManagementMaven● Dependency management
Build Management● Build profiles
mvn clean package -Ptestmvn clean package -Pprodmvn android:apk android:deploy android:run
● Archetypes/quickstartsmvn archetype:generate
Build ManagementMaven● Great for teams
● Great for libraries
● Slow but reliable
● Great with Jenkins CI Server
O/R MappingORMLite
like hibernate for android development
ORMLite + MavenWant ORMLite? Use Maven!
Dependency InjectionRoboguice
like spring injection for android development
Web Tools
● Android Asset Studio
● Action bar style generator
● Holo colors generator
● More..
Porting ICS to Gingerbread
Jake Wharton○ Champion of the "Dark Ages"
○ Author of open source, ICS support projects for android
○ Actively replies in forums and #android-dev
Porting ICS to Gingerbread Actionbar Sherlock
Porting ICS to Gingerbread View Pager Indicator
Porting ICS to Gingerbread HoloEverywhere
Porting ICS to Gingerbread Android UI Patterns
● Don't be afraid to do it yourself
● Be careful with legal issues
● If you don't have a senior, #android-dev will suffice
● Android users are very nice
● More ICS users than gingerbread
● Use dips, 48dip for your clickables
Tips and experiences
http://developer.android.com
http://www.slideshare.net/mdesjardins/android-development-the-basics
http://www.techrepublic.com/blog/app-builder/a-newbies-guide-to-android-development/1216
http://en.wikipedia.org/wiki/Android_%28operating_system%29
References