Uploaded by Bry Zeos

IT Mobile Development Reviewer

IT Mobile Development Reviewer
Android Donut – September 15,2009
Mobile computing – using a computer
while on the move
Android Éclair – Oct 26,2009
When work process is moved
from a normal fixed position
When work process is carried out
Umbrella term used to describe
Seven Major Categories
1. Portability – reducing the size
2. Miniaturization – creating new
and significantly smaller mobile
3. Connectivity – allowed users to
be online
4. Convergence – integrating
emerging types
5. Divergence – Opposite approach
to interaction design
6. Apps – developing matter and
substance for use
7. Digital Ecosystem – larger
wholes of pervasive
Android – most popular mobile platform
Modified version of linux
Software stack for mobile devices
History of Android
Founded in October 2003
Acquired by Google in August
Nov 5,2007, Open Handset
Alliance came with a goal
Linux Kernel Ver 2.6
HTC Dream in 2008
Android 1.5 – Cupcake
Android Froyo – May 20,2010
Android Gingerbread – Dec 6, 2010
Android Honeycomb – Feb 22,2011
Android ICS – Oct 18,2011
Android JellyBean – July 9,2012
Android Kitkat – Oct 31,2013
Android Lollipop – Nov 12,2014
Android Marshmallow – Oct 5,2015
Android Nougat – Aug 22,2016
Android Oreo – August 21,2017
Android Pie – Aug 6,2018
Android 10 – Sept 3,2019
Android Software Stack
1. Application layer – final layer on
top is apps
2. Application framework – written in
a Java programming
3. Android runtime – meet the
needs of running
4. Native libraries – c/c++
5. Linux kernel – hardware
abstraction layer
Lesson 2 Mobile Software
Engineering and Life Cycle
Can be used with different
1. Inception
- Starts with an idea
2. Design
UI and Responsiveness are
- UX – user centered design
- Wireframing – high level flow of
the app screens
- Data and Power Consumptions
are critical considerations
3. Development
- Tools are Android Studio, Apple
Developer SDK
- Cross-platform – target multiple
platforms with one code base
4. Test
- To verify correctness, functional
behavior and usability
- Device Fragmentation
- Screen size fragmentation
Types of Testing
a. Black-box – check the result
b. White-box – check which code
c. Unit testing – test individual
d. Performance testing – checks the
e. Security testing – checks security
vulnerabilities and user privacy
f. Regression testing – compare
with previous app
Emulators – are useful
Publish the app
Monitor and Updates
Gather and process data
Review information
Quickly identify and correct
Security Considerations
a. Privacy policies
b. Security policies
c. User agreements
Lesson 3
Resources – such as bitmaps, colors
and layout. Under res/ directory
Anim/ - define property animations
Color – define state list of colors
Drawable – images files
Layout – define ui layout
Menu – define app menus
Raw – raw form
Values – such as strings
Activities – represents a single screen
with ui
Defines the ff. call backs
OnCreate – first call back
onStart – visibile to user
onResume – user interacting with app
OnPause – does not receive user input
and cannot execute code
onStop – no longer visible
onDestroy – activity is destroyes
onRestart – restarts
Service – a component that runs in the
Started – starts it calling startService()
Bound – bindService()
onStartCommonand – when another
component requests that service be
A fragment has its own layout and its
own behaviour with its own life cycle
onBind – wants to bind
You can add or remove fragments in an
activity while the activity is running.
onUnbind – when all clients have
onRebind – when new clients have
onCreate – first created using onStart or
onDestory – no longer use and is being
Broadcast receivers – simply respond to
broadcast messages from other apps.
Messages are called events or intents.
Lesson 4
Content provider – supplies data from
one app to others
Prefix – always set to content
Authority – specifies the name
Data_type – type of data
Id – specific record
You can combine multiple fragments in
a single activity to build a multi-pane UI.
A fragment can be used in multiple
Fragment life cycle is closely related to
the life cycle of its host activity which
means when the activity is paused, all
the fragments available in the activity
will also be stopped.
A fragment can implement a behaviour
that has no user interface component.
Fragments were added to the Android
API in Honeycomb version of Android
which API version 11.
onAttach – associated with an activity
onCreate – system calls this method
when creating the fragment
OnCreate – when provider is started
onCreateView – time for fragment to
Query – receives a request
onActivityCreatyed – onCreateView
Insert – inserts new record
onStart – gets visible
Delete – deletes an existing record
onResume – becomes active
Update – updated
onPause – first indication
getType – MIME type of the data
onStop – stopped
Fragment – piece of activity
onDestroyView – destroy after call
onDestroy – final clean up
Types of Fragments
a. Single frame – using for hand
holde devices
b. List – special list view
c. Fragments transaction – move
one fragment to another
Display a list of people, which the user
can browse through.
Android Intent – abstract description of
Intent objects – bundle of information
Action – mandatory part of intent onject
It going to be synchronous the
data,Constant Value is
Data – adds a data specification to an
intent filter
Display information about the person
whose identifier is "1".
Display the phone dialer with the person
filled in.
Show settings for choosing wallpaper
It will start the platform-defined
tutorial(Default tutorial or start up
It intimates when time zone has
It is used to run default uninstaller
Display the phone dialer with the given
number filled in.
Extras – key-value pairs
Display the phone dialer with the given
number filled in.
Edit information about the person whose
identifier is "1".
Flags – optional part
If set in an Intent passed to
Context.startActivity(), this flag will
cause any existing task that would be
associated with the activity to be cleared
before the activity is started. That is, the
activity becomes the new root of an
otherwise empty task, and any old
activities are finished. This can only be
used in conjunction with
If set, and the activity being launched is
already running in the current task, then
instead of launching a new instance of
that activity, all of the other activities on
top of it will be closed and this Intent will
be delivered to the (now on top) old
activity as a new Intent.
This flag is generally used by activities
that want to present a "launcher" style
behavior: they give the user a list of
separate things that can be done, which
otherwise run completely independently
of the activity launching them.
Component Name – representing either
activity, service.
Types of Intents
Explicit – connected internal world of
Implicit – do not name a target and field