Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Android

An Android Primer
by

Andrew Wells

on 2 November 2012

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Android

Android Exploring Mobile The Market Hardware Software Android Version Releases 1.0 September 2008
1.1 February 2009
1.5 April 2009
1.6 September 2009
2.0 October 2009
2.2 May 2010
2.3 December 2010
3.0 February 2011
4.0 October 2011
4.1 July 2012 The Phone Development
Environment Emulator The Code List of Supported Sensors ACCELEROMETER
AMBIENT TEMPERATURE
GRAVITY
GYROSCOPE
LIGHT
LINEAR ACCELERATION
MAGNETIC FIELD
ORIENTATION
PRESSURE
PROXIMITY
RELATIVE HUMIDITY
ROTATION VECTOR
TEMPERATURE July 2012, Nielsen Mobile Insights Hardware Distribution Mobile Market share Phones Population Phones / person Percentage http://opensignal.com/reports/fragmentation.php http://opensignal.com/reports/fragmentation.php Screen Resolution Usage Chart http://opensignal.com/reports/fragmentation.php http://opensignal.com/reports/fragmentation.php Compared to Apple... There are many devices and sizes to account for when using Android Eclipse Android SDK Provides the API libraries and development tools needed to build, test, and debug Android Apps http://ykyuen.files.wordpress.com/2012/02/whatsapp-on-pc-14.png Android SDK Manager Android Development Tools A plugin for Eclipse that is designed to give you a powerful, integrated environment in which to build Android applications. Android Debug Bridge Command line tool to communicate with an Android emulator adb start-server
adb kill-server
adb root
adb tcpip <port>
adb shell ADB Command Examples (Remote shell interactivity!) http://mobile.tutsplus.com/tutorials/android/android-adb-quick-guide/ Not part of Eclipse, but used closely with emulator Android Virtual Devices An emulator configuration that lets you model an actual device Specifications include:
- Camera settings
- Physical Keyboard emulation
- RAM size
- Screen size
- SD card size
- Android Platform (4.0, 2.3...)
- API Level
- LCD Density Store multiple devices for testing! Examples: http://www.akeric.com/blog/?tag=android-emulator http://chiralsoftware.com/google-android-introduction/android.jsp http://stackoverflow.com/questions/10972035/android-emulator-does-not-launch-libgdx-project Debugging your AVD On a real device as well! Connect your device to the computer to install and debug You have good eye sight Concepts An Activity is an application component that provides a screen with which users can interact in order to do something Activities Fragments http://cdn.linuxforu.com/wp-content/uploads/2011/05/Figure-1-Design-Principle-590x442.png A Fragment represents a portion of a user interface in an Activity. Think of it as a sub-Activity Views Code http://www.itcsolutions.eu/wp-content/uploads/2011/08/Part_of__Android_View_Hierarchy.png Layouts Tablet Phone http://developer.android.com/guide/topics/ui/declaring-layout.html http://www.linuxforu.com/2011/05/android-fragments-api/ Resources Resource Types:
Drawable
Layouts
Menus
Strings
Styles
Animations http://www.vogella.com/articles/Android/article.html Buttons Sets layout of current activity Links TextView status object with the view in the window
Possible Commands:
status.setText("Anything");
status.setTextSize(...);
...
Can set all XML properties shown in the editor activity_main.xml Activity General Manifest File Presents essential information about the application to the Android system

(More Information later) In the code: Gen folder contains references to certain resources of the project Accessing these values Automatically created! Assets AssetsManager allows you to read an asset as an InputStream with the open() method. One small thing... layout.xml activity.java ... How do you get this? Add to R.java Services An application component that can perform long-running operations in the background Two forms of services: Started Bound Once started, a service can run in the background indefinitely Created with startService()
If activity destroyed, service continues
Usually performs a single operation
Doesn't return a result
i.e. Download/upload a file Created with bindService()
Offers client / server interface
Allows interaction between the two
Send requests, get results etc... Example: Broadcast Receiver Allows the application to register for system or application events.

All registered receivers for an event will be notified by Android once this event happens. http://www.vogella.com/articles/AndroidBroadcastReceiver/article.html List of some actions:
android.intent.action.AIRPLANE_MODE
android.intent.action.BATTERY_CHANGED
android.intent.action.BATTERY_LOW
android.intent.action.BOOT_COMPLETED
android.intent.action.DEVICE_STORAGE_LOW
android.intent.action.HEADSET_PLUG
android.intent.action.REBOOT
android.intent.action.SCREEN_OFF
android.net.wifi.WIFI_STATE_CHANGED Saving Preferences Saving Files http://stackoverflow.com/questions/2848879/how-do-i-take-advantage-of-androids-clear-cache-button Sending Data Between Activities Activity A Activity B onActivityResult .show(); Manifest File OR: startActivity(intent);
no return result Lists of Data http://www.vogella.com/articles/AndroidListView/article.html#listview_overview ADB Client: Your computer
ADB Server: Manages communication between client and daemon
Daemon: A background process on the emulator
Full transcript