5. Google
5:13
Mobile Devices: Advantages
• Always with the user
• Typically have Internet access
• Typically GPS enabled
• Typically have accelerometer & compass
• Most have cameras & microphones
• Many apps are free or low-cost
6. Google
5:13
Mobile Devices: Disadvantages
• Limited screen size
• Limited battery life
• Limited processor speed
• Limited or awkward input: soft keyboard, phone
keypad, touch screen, or stylus
• Limited web browser functionality
• Range of platforms & configurations across devices
25. Introduction
History
Libraries
Framework
Applications
Architecture
OHA
Versions
Linux kernel
Framework
Google
5:13
Access location information, run background services, set alarms,
add notifications to the status bar, and much, much more.
Build an application, including lists, grids, text boxes, buttons, and
even an embeddable web browser
Providing access to non-code resources such as localized strings,
graphics, and layout files
Enabling and simplifying the reuse of components
• Developers have full access to the same framework APIs
used by the core applications.
• Users are allowed to replace components.
26. Introduction
History
Libraries
Framework
Applications
Architecture
OHA
Versions
Linux kernel
Libraries
Google
5:13
Including a set of C/C++ libraries used by components of the Android
system
Exposed to developers through the Android application framework
• System C library - implementation of the C library (libc)
• Media Libraries - based on Packet Video's Open CORE
• Surface Manager - composites 2D and 3D graphic layers
• LibWebCore - a modern embeddable web view
• SGL - the underlying 2D graphics engine
• 3D libraries - based on OpenGL ES 1.0 APIs; the libraries use
hardware 3D acceleration
• FreeType - bitmap and vector font rendering
• SQLite - a powerful and lightweight relational database engine
27. Introduction
History
Libraries
Framework
Applications
Architecture
OHA
Versions
Linux kernel
Linux Kernel
Google
5:13
Acts as an abstraction layer between the hardware and the rest of
the software stack.
Relies on Linux version 2.6 for core system services such as
security, memory management, process management, network
stack, and driver model.
Relying on Linux Kernel 2.6 for core system services
• Memory and Process Management ,Network Stack ,Driver ,
Model ,Security.
28. Introduction
Setup Eclipse
SDK Startup
Installation
Dialogue
ADT-Eclipse
ADT Plugin
Android SDK
Create AVD
Introduction
Google
5:13
• The Eclipse IDE requires that a Java Runtime Environment (JRE)
be installed on your machine to run. If you want to using
Android SDK manager installer Java JDK was need.
Operating
System
Version Hardware JRE Windowing System
Windows
7
x86 32-bit Sun Java 5 Update 22
IBM Java 5 SR11
Win32
Direct download
x86 64-bit
Vista
x86 32-bit
Sun Java 5 Update 22
IBM Java 5 SR11
Oracle JRockit 27.6.5
x86 64-bit
Sun Java 5 Update 22
IBM Java 5 SR11
XP
x86 32-bit
Sun Java 6 Update 17
Sun Java 5 Update 22
IBM Java 5 SR11
Oracle JRockit 27.6.5
x86 64-bit
Sun Java 5 Update 22
IBM Java 5 SR11
30. Introduction
Setup Eclipse
SDK Startup
Installation
Dialogue
ADT-Eclipse
ADT Plugin
Android SDK
Create AVD
Setup Eclipse
Google
5:13
Recommend to setup Eclipse Galileo Packages, you can plug-in the
UML2 from Eclipse help menu to add it.
After download then decompress it into folder which you want,
but recommend to C: or D: root, like as C:eclipse
31. Introduction
Setup Eclipse
SDK Startup
Installation
Dialogue
ADT-Eclipse
ADT Plugin
Android SDK
Create AVD
Android SDK
Google
5:13
If you're already using the Android SDK, you should update to the
latest tools or platform using the Android SDK and AVD Manager.
Download Android SDK
• https://developer.android.com/sdk/installing/index.html
If used zip file, decompress it into C: or D: root, like as:
C:android-sdk-windows or D:android-sdk-windows
32. Introduction
Setup Eclipse
SDK Startup
Installation
Dialogue
ADT-Eclipse
ADT Plugin
Android SDK
Create AVD
ADT Plugin
Google
5:13
Android Development Tools (ADT) is a plugin for the Eclipse IDE
that is designed to give you a powerful, integrated environment in
which to build Android applications.
ADT extends the capabilities of Eclipse to let you quickly set up
new Android projects, create an application UI, add components
based on the Android Framework API, debug your applications
using the Android SDK tools, and even export signed (or
unsigned) .apk files in order to distribute your application.
Download ADT to folder under your PC, don’t decompress it.
http://developer.android.com/tools/sdk/eclipse-adt.html
38. Files & Folders
GRE
R.java
Main
RES
Eclipse(Files & Folders)
Google
5:13
SRC :- Folder contain the .java extension files that means you can
write you application code inside this file.
GOOGLE API 4.0:- Contain the file named android.jar which
contains all class library needed for running the android
application.
39. Files & Folders
GRE
R.java
Main
RES
GRE
Google
5:13
GEN:- Contains the R.java file, a
compiler-generated file that references
all the resources found in your project.
Assets:- contains all the assets used by
your application, such as HTML, text
files, databases, etc.
40. Files & Folders
GRE
R.java
Main
RES
RES
Google
5:13
res :- This folder contains all the resources used in your
application.
This is the manifest file for your Android application.
Here you specify the permissions needed by your
application, as well as other features (such as intent-
filters, receivers, etc.).
41. Files & Folders
GRE
R.java
Main
RES
Main.xml
Google
5:13
The @string in this case refers to the strings.xml file located
in the res/values folder. Hence, @string/hello refers to
the hello string defined in the strings.xml file, which is
“FirstBasicAndroid, MainActivity!”:
43. GUI
Google
5:13
All user interface elements in an Android app are built
using View and ViewGroup objects.
A View is an object that draws something on the screen
that the user can interact with.
A ViewGroup is an object that holds other View (and
ViewGroup) objects in order to define the layout of the
interface.
The user interface for each component of your app is
defined using a hierarchy of View and ViewGroup objects.
45. Control Type Description Related Classes
Button A push-button that can be pressed, or
clicked, by the user to perform an action.
Button
Text field An editable text field. You can use
the AutoCompleteTextViewwidget to create
a text entry widget that provides auto-
complete suggestions
EditText,AutoCompleteTextView
Checkbox An on/off switch that can be toggled by the
user. You should use checkboxes when
presenting users with a group of selectable
options that are not mutually exclusive.
CheckBox
Radio button Similar to checkboxes, except that only one
option can be selected in the group.
RadioGroup
RadioButton
Toggle button An on/off button with a light indicator. ToggleButton
Spinner A drop-down list that allows users to select
one value from a set.
Spinner
Pickers A dialog for users to select a single value for
a set by using up/down buttons or via a
swipe gesture. Use aDatePickercode>
widget to enter the values for the date
(month, day, year) or a TimePicker widget
to enter the values for a time (hour, minute,
AM/PM), which will be formatted
automatically for the user's locale.
DatePicker,TimePicker