0% found this document useful (0 votes)
20 views

Android Chapter01 Intro

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Android Chapter01 Intro

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

Mobile Phone Evolution

Lesson 1 1876
• Alexander Graham Bell became the first to
receive a patent for the electric phone.

• Alfred Gross. Case Tech OH (Case Western


Android Development 1936
Reserve University). Invented/Patented
Walkie-talkie, CB radio, Telephone Pager.

Introduction • Dr. Martin Cooper invented first commercial


Chester Gould

portable Motorola radio phone


Victor Matos 1975
Cleveland State University
• iPhone
2007 • Android

Portions of this page are reproduced from work created and shared by Google and used according to terms
described in the Creative Commons 3.0 Attribution License. 1-2
Images from: http://en.wikipedia.org/wiki/Dick_Tracy http://en.wikipedia.org/wiki/Martin_Cooper_(inventor)

Hardware: What is inside a Smart Cellular Phone? Hardware: Reusing Cell Phone Frequencies

Base stations of the world,


Oversimplifying… unite!

The main idea behind cellular


Smart cellular phone ≥ radio + computer* communications is the division of
a large city into small areas called
cells each hosting a Base-Station.

Base-Stations operate with just


enough power to reach only the
users inside their individual cells.
= + Each hexagonal cell covers
approx. 10 sq miles (26 km2)

Industries ⟵ ∑ Software + Telecom+ Semiconductor + Marketing Base stations use low-power transmitters, therefore the same frequencies
can be reused in non-contiguous cells.
1-3 1-4
Software: What is Android? Why Android?

• Android OS is an open-source Linux-based operating system for mobile Listen from the project creators/developers (2.19 min)
devices. • Nick Sears. Co-founder of Android
• Steve Horowitz. Engineering Director
• Dam Morrill. Developer
• It is being developed by the Open Handset Alliance and Google Inc. • Peisun Wu. Engineering Project Manager
• Erick Tseng. Project Manager
• Iliyan Malchev. Engineer
• The operating system has a number of native applications supporting
• Mike Cleron. Software Manager
telephony, messaging, emailing, contact management, calendar, • Per Gustafsson. Graphics Designer.
entertainment, multimedia experience, location services, mapping, social
interaction, etc. Link accessed on Sept 1, 2014:
http://www.youtube.com/watch?v=6rYozIZOgDk&eurl=http://www.android.com/abo
ut/&feature=player_embedded
• Third party Java developers can use the Android API to extend the
functionality of the devices. You will hear statements such as:

• Google provides an on-line electronic market for third-party developers to “…currently it is too difficult to make new products … open software brings more
sell-distribute their custom applications. innovation … choices … lower costs … enables the industry to create….more
applications such as family planner, my taxes, … understand my wife better, … ”
1-5 1-6

What is the Open Handset Alliance? Open Handset Alliance Members

A consortium of 80+ technology and mobile business companies.


Operators Software Co. Commercializat. Semiconductor Handset Manf
Bouygues Tele Ascender Corp. Accenture ARM ACER
Quoting from www.OpenHandsetAlliance.com site (2/25/2012) China Mobile Borqs Aplix Atheros ASUS
China Telec. eBay Astonishing Tribe Audience Dell
“ … Today, there are 1.5 billion television sets in use around the China Unicom Esmertec Noser Engineering Broadcom Corp. Garmin
KDDI Corp. Google Omron Software CSR Plc. HTC
world. 1 billion people are on the Internet. But nearly 3 billion people
NTT DoCoMo LivingImage Sasken Cypress Kyocera
have a mobile phone, making it one of the world’s most successful Softbank NMS Comm. Teleca Freescale Lenovo Mobile
consumer products… Sprint Nextel Nuance Comm. … Gemalto LG
Telecom Italia PacketVideo Wind River Systems Intel Corp. Motorola
Building a better mobile phone would enrich the lives of countless Telefónica SkyPop Marvell Tech NEC
people across the globe. Telus … MediaTek
T-Mobile SONiVOX MIPS Techn. Samsung
The Open Handset Alliance™ is a group of mobile and technology ... Nvidia Corp Sharp
Vodafone Qualcomm …
leaders who share this vision for changing the mobile experience for
Renesas Corp Sony Ericsson
consumers …” ST-Ericsson …
Synaptics Toshiba
Texas Instrum.
Via Telecom
1-7 1-8
Android Developers Talk The Mobile Revolution

Electronic tools commonly carried by a typical business warrior

Short video (4 min.) Not so long ago … Today


Dave Bort and
Dan Borstein, 1. Phone 1. Smartphone
2. Pager 2. Laptop (perhaps!)
Two members of the
Android Open Source 3. PDA Organizer
Project talk about their 4. Laptop
experience.
5. MP3 Portable music player
6. Wired modem
7. No Internet access / limited
access

Link accessed on Sept 1, 2014 Tomorrow ?


http://www.youtube.com/watch?v=7Y4thikv-OM
1-9 1 - 10

The Mobile Revolution Android vs. OS Competitors

Dreaming aloud
I want my 2015 Smartphone to be …
1. Phone 1.Apple Inc.
2. Pager
3. PDA Organizer 2.Microsoft
4. High Quality Camera (still & video)
5. Portable music player 3.Nokia Symbiam
6. Portable TV / Video Player / Radio
7. Laptop vs. 4.Palm & webOS
8. Play Station
9. GPS / Compass / Navigation (road & inside buildings) 5.Research In Motion
10. Golf Caddy (ball retriever too)
11. Book Reader (I don’t read, It reads to me with passion!)
12. Electronic key (Car / Home / Office)
13. Remote Control (Garage, TV, …)
14. Credit Card / Driver’s License / Passport / Airplane Ticket
15. Cash
16. Cook, house chores
17. Psychologist / Mentor / Adviser
18. Personal trainer
19. Dance instructor
20. ???? 1 - 11 1 - 12
Android Software/Hardware Components Android’s Software Architecture

• Dalvik virtual machine (soon to be replaced by ART )


• Integrated browser (WebKit)
• Graphic Capabilities (hardware acceleration)
• SQLite for structured data storage
• Media support (audio/video)
• GSM Telephony (hardware dependent)
• Bluetooth, EDGE, 3G, 4G, NFC, and Wi-Fi (hardware manufacturer
dependent)
• Camera, GPS, compass, accelerometer, gyroscope, proximity/ambient
light, barometric pressure, fingerprint reader, heart rate sensor
(hardware dependent)
• Software Development Tools & Application framework
(device emulator, debugging, profiling, plugin for the Eclipse IDE, resource
managers, Android Studio)

1 - 13 1 - 14

Android’s Software Architecture Android’s Software Architecture


Video 1/3: Video 2/3:
Software Layers Application’s Life Cycle
Presented by Mike Cleron, Google Corp. (13 min) Presented by Mike Cleron, Google Corp. (7 min)
Available at: http://www.youtube.com/watch?v=QBGfUs9mQYY Available at: http://www.youtube.com/watch?v=fL6gSd4ugSI&feature=channel

1 - 15 1 - 16
Android’s Software Architecture Android Application Framework
Video 3/3:
Video:
Android’s API
Inside the
Presented by Mike Cleron, Google Corp. (8 min) Android Application Framework
Video available at: (about 52 min)
http://www.youtube.com/watch?v=MPukbH6D-lY&feature=channel Presented by Dan Morrill – Google
At Google Developer Conference
San Francisco – 2008

Available at:
http://sites.google.com/site/io/inside-the-android-application-framework

Android is designed to be fast, powerful, and easy to develop for. This session will
discuss the Android application framework in depth, showing you the machinery
behind the application framework.

explains the life-cycle of an android apk. very good!


1 - 17 1 - 18

Android Support - Education An Introduction to Android

Video: Video:
Android Development Tools An Introduction to Android
(about 60 min) (about 52 min)

Google 2011 Developer Conference


Presented by Jason Chen – Google
San Francisco
At Google Developer Conference
San Francisco - 2008
Presented by

• Xavier Ducrohet, tech-lead for the Android SDK and Developer Tools.
• Tor Norbye, engineer on the Android SDK team working on visual tools for Video available at:
Android development. http://www.youtube.com/watch?v=x1ZZ-R3p_w8

LINK:
http://www.google.com/events/io/2011/sessions/android-development-tools.html

1 - 19 1 - 20
The Dalvik Virtual Machine Android Intents

• An Intent is a request for services offered by an Android based device.


Video (61 min)
Dalvik VM Internals • An Intent is made up of various pieces including:
Presented by Dan Borstein – desired action or service,
At Google Developer – 2008 – data, and
San francisco – category of component that should handle the intent and instructions
on how to launch a target activity.
Video available at: Action Data
http://www.youtube.com/watch?v=ptjedOZEXPM
The general action to be performed, The data to operate on, such as a
such as: person record in the contacts
ACTION_VIEW database, expressed as a Uri.
ACTION_EDIT
ACTION_MAIN
etc.

1 - 21 1 - 22

Android Intents Example1: Java + Built-in Intent


Some examples of Intent’s action/data pairs are:
The following code fragment calls an Intent whose job is to invoke a built-in
ACTION_VIEW content://contacts/1 -- Display information about the person task (ACTION_VIEW) and explore the Contacts available in the phone.
whose identifier is "1".

ACTION_DIAL content://contacts/1 -- Display the phone dialer with the


person filled in. Intent myIntent = new Intent(
Intent.ACTION_VIEW,
ACTION_VIEW tel:123 -- Display the phone dialer with the given number
Uri.parse("content://contacts/people") );
filled in
startActivity(myIntent);
ACTION_DIAL tel:123 -- Display the phone dialer with the given number filled
in.

ACTION_EDIT content://contacts/1 -- Edit information about the person


whose identifier is "1".

ACTION_VIEW content://contacts/ -- Display a list of people, which the user


can browse through.
1 - 23 1 - 24
Example1: Java + Built-in Intent Intent uses ACTION_VIEW Example1: Java + Built-in Intent
to see Contacts.

Java class including invocation to an Intent to display Contacts.

public class AndDemo1 extends Activity {


/** show contact list */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

Intent myIntent = new Intent(


Intent.ACTION_VIEW,Uri.parse( "content://contacts/people"));

startActivity(myIntent);
}

1 - 25 1 - 26

Dissecting an Android Application Dissecting an Android Application

Structure of a Structure of a
typical Android typical Android
Application Application

(Shown by Eclipse’s (Android Studio)


Project Explorer)

1 - 27 1 - 28
Android Manifest XML File Android Manifest XML File

• Every application must have an This is a list of the <XML-elements> allowed in the Manifest file.
AndroidManifest.xml file
in its root directory. <action> <permission>
<activity> <permission-group>
• The manifest presents essential information <activity-alias> <permission-tree>
about the application to the Android system,
<application> <provider>
for instance it has an entry for each activity,
library request, and special permissions <category> <receiver>
needed to assemble the app. <data> <service>
<grant-uri-permission> <uses-configuration>
<instrumentation> <uses-library>
<intent-filter> <uses-permission>
<manifest> <uses-sdk>
<meta-data>

1 - 29 1 - 30

Android Manifest XML File Example2. Currency converter


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="matos.earthquake"
android:versionCode="1" Implementing a currency converter:
android:versionName="1.0.0">
<application android:icon="@drawable/yellow_circle" android:label="@string/app_name">

USD ⟶ Euro ⟶ Colon (CR)


<activity android:name=".AndQuake"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Note.
</activity>
Naive implementation using a fixed
<activity android:name=".SatelliteMapping"> </activity>

<service android:name="AndQuakeService" android:enabled="true" > exchange rate:


</service>

<receiver android:name="AndQuakeAlarmReceiver" >


1 Costa Rican Colon = 0.0019 U.S. dollars
<intent-filter>
<action 1 Euro = 1.35 U.S. dollars
android:name = "ALARM_TO_REFRESH_QUAKE_LIST"/>
</intent-filter>
</receiver>
</application>

<uses-library android:name="com.google.android.maps" />


<uses-permission android:name="android.permission.INTERNET" />

</manifest> 1 - 31 1 - 32
Example2. Currency converter Example2. Currency converter
package csu.matos.currencyconverter; @Override
public void onCreate(Bundle savedInstanceState) {
import android.app.Activity;
super.onCreate(savedInstanceState);
import android.os.Bundle; setContentView(R.layout.activity_main_linear);
import android.view.View;
import android.view.View.OnClickListener; // bind local controls to GUI widgets
import android.widget.Button; txtUSDollars = (EditText)findViewById(R.id.txtUSDollars);
// make ‘Euros’ box not-editable (no user input)
import android.widget.EditText;
txtEuros = (EditText)findViewById(R.id.txtEuros);
txtEuros.setInputType(EditorInfo.TYPE_NULL);
public class Currency1 extends Activity {
// No user input. See layout: android:editable=“false”
//USA money format (12 digits, 2 decimals) txtColones = (EditText)findViewById(R.id.txtColones);
DecimalFormat usaDf = new DecimalFormat("###,###,###,###.##");
// attach click behavior to buttons
// naive currency converter (USD to Euros & Colones) btnClear = (Button)findViewById(R.id.btnClear);
private final double EURO2USD = 1.35; btnClear.setOnClickListener(new OnClickListener() {
private final char EUROSYM = '\u20AC'; // clear the text boxes
private final double COLON2USD = 0.0019; @Override
private final char COLONSYM = '\u20A1'; public void onClick(View v) {
// GUI widgets txtColones.setText("");
Button btnConvert; txtEuros.setText("");
txtUSDollars.setText("");
Button btnClear;
}
EditText txtUSDollars; });
EditText txtEuros;
EditText txtColones;
1 - 33 1 - 34

Example2. Currency converter Example2. Currency converter


// do the conversion from USD to Euros and Colones
btnConvert = (Button) findViewById(R.id.btnConvert);
btnConvert.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
String usdStr = txtUSDollars.getText().toString();
double usd = Double.parseDouble(usdStr);
String euros = EUROSYM +
String.valueOf(usaDf.format(usd / EURO2USD));
String colones = COLONSYM +
String.valueOf(usaDf.format(usd / COLON2USD));
txtEuros.setText(euros);
txtColones.setText(colones);
} catch (NumberFormatException e) {
// ignore errors
}

}
});// setOnClick...

}// onCreate

}// class

1 - 35 11-36
- 36
Example2. Currency converter Example2. Currency converter
LAYOUT: res/layout/activity_main_linear.xml (1 of 3) LAYOUT: res/layout/activity_main_linear.xml (2 of 3)

<?xml version="1.0" encoding="utf-8"?> <LinearLayout


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
android:layout_width="match_parent" android:layout_height="wrap_content" >
android:layout_height="match_parent" <TextView
android:orientation="vertical" android:id="@+id/textView3"
android:padding="2dp" > android:layout_width="wrap_content"
android:layout_height="wrap_content"
<LinearLayout android:ems="5"
android:layout_width="match_parent" android:gravity="right"
android:layout_height="wrap_content" > android:text="Euros" />

<TextView <EditText
android:id="@+id/textView2" android:id="@+id/txtEuros"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:ems="5" android:layout_weight="2" />
android:gravity="right" </LinearLayout>
android:text="US Dollars" />
<LinearLayout
<EditText android:layout_width="match_parent"
android:id="@+id/txtUSDollars" android:layout_height="wrap_content" >
android:layout_width="wrap_content"
android:layout_height="wrap_content" <TextView
android:layout_weight="2" android:id="@+id/textView4"
android:hint="Enter US Dollars amount" android:layout_width="wrap_content"
android:inputType="numberDecimal" /> android:layout_height="wrap_content"
android:ems="5"
<requestFocus /> android:gravity="right"
</LinearLayout> android:text="Colon CR" />
1 - 37 1 - 38

Example2. Currency converter APPENDIX A.


LAYOUT: res/layout/activity_main_linear.xml (3 of 3)
<EditText The Size of the
android:id="@+id/txtColones"
android:layout_width="wrap_content" Mobile Market
android:layout_height="wrap_content"
android:layout_weight="2" Year 2009
android:editable="false" />
</LinearLayout>

<LinearLayout Reference:
android:layout_width="match_parent"
android:layout_height="wrap_content" >
http://gizmodo.com/5489
<Button 036/cellphone-overshare
android:id="@+id/btnClear"
android:layout_width="wrap_content"
Accessed on April 2010
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Clear" />

<Button
android:id="@+id/btnConvert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="2"
android:text="Convert" />
</LinearLayout>

</LinearLayout>
1 - 39 40
The Size of the Mobile Market – 2009 The Size of the Mobile Market – 2009 Extracted from:
http://gizmodo.com/5489036/cellphone-overshare
http://www.microsoft.com/investor/reports/ar09/10k_fr_bal.html
Extracted from: http://gizmodo.com/5489036/cellphone-overshare Accessed on April 2010 Exxon Mobil 2009 Summary Annual Report
2010 Toyota Annual Report (pp 12)

2009 Mobile Revenue


2009 480 m
Mobile market Papers Revenue Year 2009
compared to other
1.4bn Microsoft
technologies Internet users
worldwide 4 bn $78bn
Mobile Phone
worldwide
(half the
population of the $130 bn
planet) Messaging
5.33% 1.5bn Toyota Motors
6.69%
Movie information Business Directory Televisions
worlwide
$204bn
7.13%
Traded Stocks and
$600 bn
Financial
Voice $70 bn
Non-messaging

Exxon Mobil
11.94%
Entertainment
$301bn
News 48.7%
News and Sport
Revenue is the
Information
20.21% collective amount of
Social income made by a
Networking Content company (usually from
the sales of goods &
accessed from services)
mobile phones
1 - 41 1 - 42

The Size of the Mobile Market – 2009 The Size of the Mobile Market – 2009
Extracted from: http://gizmodo.com/5489036/cellphone-overshare Accessed on April 2010 Extracted from: http://gizmodo.com/5489036/cellphone-overshare Accessed on April 2010

2009 Mobile Search Market 2009

How SMS compares


as a text communication
1.94% Yahoo application 3.05 bn
SMS users
worldwide

2.6 SMS per day 600 m


per person world IM users
97.57% 2.43% average
Google worldwide
the most used
0.63% Other written
communication
tool of the planet
0.25% Ask
1.3 bn
0.11% MSM Email users
worldwide

1 - 43 1 - 44
The Size of the Mobile Market – Fourth Quarter 2009-Q4 The Size of the Mobile Market – Second Quarter 2010-Q2
Extracted from: http://gizmodo.com/5489036/cellphone-overshare Accessed on April 2010 Extracted from: http://gizmodo.com/5489036/cellphone-overshare Accessed on April 2010

2009 Others
Microsoft 5%
Mobile Operating System
5%
Market Share Worldwide
13% Google
19%
RIM iPhone 17%

9% RIM
Windows 18%

6% Other
2%
Android
Apple
14% Nokia
51%
Symbian 41%

1 - 45 1 - 46

The Size of the Mobile Market – Fourth Quarter 2010-Q4 The Size of the Mobile Market – Second Quarter 2011-Q2
Extracted from: http://gizmodo.com/5489036/cellphone-overshare Accessed on April 2010 Extracted from: http://gizmodo.com/5489036/cellphone-overshare Accessed on April 2010

Microsoft Others, 2.9% Windows,


3.1% Others, 3%
WebOs, 5%

RIM
14.6% Google RIM, 11%
32.9%

Apple Combined sales in Q4 Android, 52%


300 million units
16.0% iPhone , 29%

Nokia
30.6%
1 - 47 1 - 48
The Size of the Mobile Market – First Quarter 2014-Q1 The Size of the Mobile Market – First Quarter 2014-Q3
Taken on Sept 2014, from: Obtained on Dec 2014 from: http://www.gartner.com/document/2911618
http://techcrunch.com/2014/05/06/android-still-growing-market-share-by-winning-first-time-smartphone-users/

Number of new devices sold in the indicated periods.


AOSP = Android Open Source Project
1 - 49 1 - 50

Some New Products-Ideas for 2011 -15 Some New Products-Ideas for 2011 -15
Open Automotive Alliance
http://www.openautoalliance.net/#members Open Automotive Alliance
http://www.openautoalliance.net/#members

"The OAA is a global alliance of technology and


auto industry leaders committed to bringing
the Android platform to cars starting in 2015 “

Flex screen phones Founding members


Audi, GM, Google, Honda, Hyundai and NVIDIA

New Members
• Alpine • FUJITSU TEN • Nissan • Subaru
• Bentley • HARMAN • Panasonic • Suzuki
Wearable devices • Clarion • Infiniti • Parrot • Symphony
• CloudCar • JVCKENWOOD • Pioneer Teleca
• Delphi • LG • Renault • Volkswagen
• FIAT Chrysler • Maserati • Renesas • Volvo
• Ford • Mazda • SEAT
Large screen smartphones • Freescale • Mitsubishi • Škoda

1 - 51 1 - 52
Cell-Phone Diffusion Cell-Phone Diffusion

Taken from
Determinants of Mobile Phone
Penetration Rates in Asia and Africa: A
Panel Data Analysis. By Kokila P. Doshi
and Andrew Narwold.
Proceedings of 9th International
Business and Social Science Research
Conference January, 2014, Dubai, UAE,
ISBN: 978-1-922069-41-2

Figure 1.
Mobile subscription per 100
inhabitants
Dr. Lyza Lyth
Mma Justine & her children

Mount Kilimanjaro
Tanzania, October 2010

Figure 2.
Fixed lines per 100 inhabitants
1 - 53 1 - 54

Thanks for being here

Questions?

1 - 55

You might also like