2. What is Android?
A mobile device operating system.
Seen primary in tablets and Cellphones.
Based on a Linux kernel. Applications are
Java Based
Open source and given freely to both
developers and cellphone manufactures
3. Android Market Share is growing
http://arstechnica.com/gadgets/news/2011/01/android-beats-nokia-apple-rim-in-2010-but-firm-warns-about-2011.ars
4. A simple app can make pretty penny
Kim, a former Volkswagen
engineer and co-founder of San
Francisco-based startup Picwing,
now earns $13,000 each month off
an Android app called Car Locator
http://www.wired.com/gadgetlab/2010/03/android-developer/
5. How hard is it to make an app?
Not difficult at all.
If you know Java you practically know Android.
Google provides all the tools.
Google provides comprehensive tutorials.
Many matured book resources available
6. Main concepts to an Android Application
Java
Android SDK
XML
Android VM
7. Android SDK
The Android SDK includes everything to connect
an application to the UI and comes with the
emulator and a simple GUI creator.
Android tools
GUI tools
Application Emulator
9. XML
From Wikipedia
Extensible Markup Language (XML) is a set of rules
for encoding documents in machine-readable form. It
is defined in the XML 1.0 Specification[4] produced
by the W3C, and several other related specifications,
all gratis open standards.[5]
The design goals of XML emphasize simplicity,
generality, and usability over the Internet.[6] It is a
textual data format with strong support via Unicode
for the languages of the world. Although the design of
XML focuses on documents, it is widely used for the
representation of arbitrary data structures, for
example in web services.
10. Android and XML
Android uses XML for anything that isn't the
actual program.
GUI.
Information about the program, ie the version
Enables future web based extensions
(XML is primarily web)
12. Android Virtual Device
A virtual machine used for testing applications
Allows Developers to test a wide range of
device.
These devices could be a tablets, cellphones or
low powered computers.
It's a VM, thus allows consistent testing to
happen on any computer set up with the SDK!
13.
14. How to make an app.
Setting Up.You need
Eclipse
http://www.eclipse.org/
Plugin
http://developer.android.com/sdk/eclipse-
adt.html
Android SKD
http://developer.android.com/sdk/index.html
15. Run the SDK
Simply hit accept all
The update will take a while.
Start installing the add on.
16. To install the plug in
Start Eclipse
Go to Help, install new software
19. Create a new Project
Application name. This is the human-readable
title for your application
Package name. This is the package
namespace. Think Java Name space
Create Activity. Creates a class, and auto
creates the “onCreate” method. onCreate,
think of it as “main”
Min SDK Version. The minimum Android API
to run the application.
http://developer.android.com/index.html
20.
21. Programming
Main concepts
No main, instead an onCreate method.
This should be auto defined in new set up
or manually added later
Listeners and observers. You tell Android what
method is connected to what buttons
GUI
25. Create GUIs
GUIs are rarely manually created. There are
generators for Android for GUIs.
Droid Draw. A Drag and Drop style application.
Not perfect, but great for quickly making a
slick interface.
http://www.droiddraw.org/
26.
27. So you think you can develop
It's easy, it's simple and you can make a lot of
money! What else is there to think about?
Fees: cost to actually sell an application.
Development hurdles.
How does Android stand up to Apple?
28. Google fees
To sell an application, one must have a Google
Checkout account.
Google charges 20 dollars for the account.
Google also charges 3% to withdraw your
profits. This is in addition to the 30% cut for
selling an app.
In the end, Google consumes 33% of your sale
price.
https://market.android.com/support/bin/answer.py?answer=112622
29. Issues with Android Development
The strength of Google Android platform is its
flexibility. Anyone can put their version of
Android on any hardware.
This is a pain for developers.
Random amount of RAM, different CPUs,
screen sized and manufacture changes to the
phone make it almost impossible to make
completely compatible applications.
30. Solutions
Testing
Testing
Testing
A developer just simply has to test using the
AVDs and watch for error reports. The android
SDK should stop most compatibility issues.
High resource applications should consider
putting system requirements.
31. Why are iPhone aps “better?”
Gem Miner
Top 10 Android Game
Infinity Blade
Top 10 iPhone game
32. Industry views android users as cheaper than apple
users. If one can afford an iPhone, whats a 1, 5,
15, 60 dollars for an ap? Many android users
even pride themselves on never buying a paid ap.
More users willing to spend more money, the more
big companies such as EA or EPIC are willing to
invest into a platform.
This is highlighted on the previous screen. Game
on the left is a smaller company game. Game on
the right is also likely a smaller company, but it is
using EPICs unreal engine for iPhone.
More money, more tools.
http://www.phonearena.com/news/Gaming-guru-John-Carmack-says-iOS-better-for-game-developing-than-Android-Epic-Games-founder-agrees_id18186
33. Conclusion
Android is a great platform gaining strength every
day.
If your main goal is to make as much money as
possible creating applications, it is still better to
go with Apple.
If you want to make apps quickly and with less
hassle go with Android. Apple is extremely strict
with their sales process and requirements