Android 101
Sasha Goldshtein
CTO, Sela Group
blog.sashag.net | @goldshtn
System Architecture
Applications
Dalvik VM
Linux Kernel
Drivers, Metal
Important Android Versions

Gingerbread
2.3

Honeycomb
3.x

Ice Cream
Sandwich
4.0.x

Jelly Bean
4.1-4.3

KitKat
4.4
Google Play and Apps
• >1,000,000 apps
• Free, paid, freemium,
ad-supported
monetization
– 70-30 revenue sharing

• Sideloading supported
(does not require
rooting)
Application Components
Activities

Views

Intents

Broadcast
Receivers

Services

Content
Providers

Permissions
App Development Tenets
Free to shoot yourself in the foot
• No limitations on background work, access to device
features, access to user data, …
Be responsible
• Conserve power, respect user privacy and
preferences, do not crash
Be responsive
• Android device owners are tired of slow, laggy, nonresponsive apps
Xamarin, or
“C# on 3 billion devices”
• Xamarin provides a .NET runtime
for iOS and Android development
in C#
• Proprietary IDE: Xamarin Studio
• Visual Studio integration
Our First Android Application
• The rest of this talk is a big DEMO!
• Concepts covered:
– Views and layouts, basic UI, menus
– Transitioning between activities
– Persistence to files
– Location support and proximity alerts
– Alarms and notifications
Thanks!
Sasha Goldshtein
blog.sashag.net | @goldshtn

Android Development with Eclipse and Xamarin