synapseindia android apps-shepherd

33
Android

Upload: synapseindiaappsdevelopment

Post on 18-Jul-2016

38 views

Category:

Documents


0 download

DESCRIPTION

Synapseindia Android Apps-ShepherdSynapseindia Android Development, Synapseindia Iphone Apps, Synapseindia Mobile Apps, Synapseindia Reviews, Synapseindia Complaints

TRANSCRIPT

Page 1: Synapseindia Android Apps-Shepherd

Android

Page 2: Synapseindia Android Apps-Shepherd

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

Page 3: Synapseindia Android Apps-Shepherd

Android Market Share is growing

Page 4: Synapseindia Android Apps-Shepherd

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

Page 5: Synapseindia Android Apps-Shepherd

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

Page 6: Synapseindia Android Apps-Shepherd

Main concepts to an Android Application

Java Android SDK XML Android VM

Page 7: Synapseindia Android Apps-Shepherd

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

Page 8: Synapseindia Android Apps-Shepherd

SDK connecting Java to a GUI

Page 9: Synapseindia Android Apps-Shepherd

XMLFrom 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.

Page 10: Synapseindia Android Apps-Shepherd

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)

Page 11: Synapseindia Android Apps-Shepherd

XML Android does it for youGUI to XML

Page 12: Synapseindia Android Apps-Shepherd

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!

Page 13: Synapseindia Android Apps-Shepherd
Page 14: Synapseindia Android Apps-Shepherd

How to make an app.Setting Up.

You need

Eclipse http://www.eclipse.org/

Plugin http://developer.android.com/sdk/eclipse-adt.html

Android SKDhttp://developer.android.com/sdk/index.html

Page 15: Synapseindia Android Apps-Shepherd

Run the SDKSimply hit accept all

The update will take a while. Start installing the add on.

Page 16: Synapseindia Android Apps-Shepherd

To install the plug inStart Eclipse

Go to Help, install new software

Page 17: Synapseindia Android Apps-Shepherd

Getting Started

developer.android.com/resources/tutorials/Android applications launched from eclipse run

off a Virtual Machine (Android Virtual Device)

To set up the ADV in eclipsewindow-> Android SDK and AVD Manager.Click NewUse next frame as a guide for settings

Page 18: Synapseindia Android Apps-Shepherd
Page 19: Synapseindia Android Apps-Shepherd

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

Page 20: Synapseindia Android Apps-Shepherd
Page 21: Synapseindia Android Apps-Shepherd

ProgrammingMain concepts

No main, instead an onCreate method.This should be auto defined in new set upor manually added later Listeners and observers. You tell Android what

method is connected to what buttons GUI

Page 22: Synapseindia Android Apps-Shepherd

Launcher Example

This should be auto-generated for you assuming a correct project set up.

Page 23: Synapseindia Android Apps-Shepherd

Listener Example

Page 24: Synapseindia Android Apps-Shepherd

Listener XML (different applications)

Page 25: Synapseindia Android Apps-Shepherd

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/

Page 26: Synapseindia Android Apps-Shepherd
Page 27: Synapseindia Android Apps-Shepherd

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?

Page 28: Synapseindia Android Apps-Shepherd

Google feesTo 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

Page 29: Synapseindia Android Apps-Shepherd

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.

Page 30: Synapseindia Android Apps-Shepherd

Solutions

Testing Testing TestingA 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.

Page 31: Synapseindia Android Apps-Shepherd

Why are iPhone aps “better?”

Gem MinerTop 10 Android Game

Infinity BladeTop 10 iPhone game

Page 32: Synapseindia Android Apps-Shepherd

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.

Page 33: Synapseindia Android Apps-Shepherd

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