SlideShare uma empresa Scribd logo
1 de 26
Bruce Scharlau, University of Aberdeen, 2010
Google Android
Mobile Computing
Based on android-sdk_2.2
Bruce Scharlau, University of Aberdeen, 2010
Android is part of the ‘build a
better phone’ process
Open Handset Alliance produces
Android
Open Handset Alliance produces
Android
Comprises handset manufacturers,
software firms, mobile operators, and
other manufactures and funding
companies
Comprises handset manufacturers,
software firms, mobile operators, and
other manufactures and funding
companies
http://www.openhandsetalliance.com/
Bruce Scharlau, University of Aberdeen, 2010
Android is growing
http://metrics.admob.com/wp-content/uploads/2010/06/May-2010-AdMob-Mobile-Metrics-Highlights.pdf
Does not include iTouch or iPad, as not smartphones
Uneven distribution of OS by regions
Bruce Scharlau, University of Aberdeen, 2010
Android makes mobile Java easier
http://code.google.com/android/goodies/index.html
Well, sort of…
Bruce Scharlau, University of Aberdeen, 2010
Android applications are written
in Java
package com.google.android.helloactivity;
import android.app.Activity;
import android.os.Bundle;
public class HelloActivity extends Activity {
public HelloActivity() {
}
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.hello_activity);
}
}
Bruce Scharlau, University of Aberdeen, 2010
Android applications are
compiled to Dalvik bytecode
Write app in JavaWrite app in Java
Compiled in JavaCompiled in Java
Transformed to Dalvik bytecodeTransformed to Dalvik bytecode
Linux OSLinux OS
Loaded into Dalvik VMLoaded into Dalvik VM
Code for intent passing
messages
Bruce Scharlau, University of Aberdeen, 2010
First activity
• Button search = (Button) findViewById(R.id.btnSearch);
search.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent intent = new Intent(Search.this, SearchResults.class);
Bundle b = new Bundle();
EditText txt1 = (EditText) findViewById(R.id.edittext);
EditText txt2 = (EditText) findViewById(R.id.edittext2);
b.putString("name", txt1.getText().toString());
b.putInt("state", Integer.parseInt(txt2.getText().toString()));
//Add the set of extended data to the intent and start it
intent.putExtras(b);
startActivity(intent);
}
});
Bruce Scharlau, University of Aberdeen, 2010
Second activity
• @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.search_results);
• Bundle b = getIntent().getExtras();
int value = b.getInt("state", 0);
String name = b.getString("name");
TextView vw1 = (TextView) findViewById(R.id.txtName);
TextView vw2 = (TextView) findViewById(R.id.txtState);
vw1.setText("Name: " + name);
vw2.setText("State: " + String.valueOf(value));
}
Bruce Scharlau, University of Aberdeen, 2010
Bruce Scharlau, University of Aberdeen, 2010
The Dalvik runtime is optimised
for mobile applications
Run multiple VMs efficientlyRun multiple VMs efficiently
Each app has its own VMEach app has its own VM
Minimal memory footprintMinimal memory footprint
Bruce Scharlau, University of Aberdeen, 2010
Android has many components
Can assume that most have
android 2.1 or 2.2
Bruce Scharlau, University of Aberdeen, 2010
http://developer.android.com/resources/dashboard/platform-versions.html
Bruce Scharlau, University of Aberdeen, 2010
Android has a working emulator
Bruce Scharlau, University of Aberdeen, 2010
All applications are written in
Java and available to each other
Android designed to enable reuse of
components in other applications
Android designed to enable reuse of
components in other applications
Each application can publish its
capabilities which other apps can use
Each application can publish its
capabilities which other apps can use
Bruce Scharlau, University of Aberdeen, 2010
Android applications have
common structureViews such as
lists, grids, text
boxes, buttons,
and even an
embeddable web
browser
Views such as
lists, grids, text
boxes, buttons,
and even an
embeddable web
browser
Content
Providers that
enable
applications to
access data from
other applications
(such as
Contacts), or to
share their own
data
Content
Providers that
enable
applications to
access data from
other applications
(such as
Contacts), or to
share their own
data
A Resource Manager,
providing access to non-
code resources such as
localized strings,
graphics, and layout files
A Resource Manager,
providing access to non-
code resources such as
localized strings,
graphics, and layout files
A Notification Manager
that enables all apps to
display custom alerts in the
status bar
A Notification Manager
that enables all apps to
display custom alerts in the
status bar
An Activity Manager that
manages the life cycle of
applications and provides
a common navigation
backstack
An Activity Manager that
manages the life cycle of
applications and provides
a common navigation
backstack
Bruce Scharlau, University of Aberdeen, 2010
Android applications have
common structure
Broadcast
receivers can
trigger intents that
start an application
Broadcast
receivers can
trigger intents that
start an application
Data storage
provide data for
your apps, and
can be shared
between apps –
database, file,
and shared
preferences
(hash map) used
by group of
applications
Data storage
provide data for
your apps, and
can be shared
between apps –
database, file,
and shared
preferences
(hash map) used
by group of
applications
Services run in the
background and have
no UI for the user –
they will update data,
and trigger events
Services run in the
background and have
no UI for the user –
they will update data,
and trigger events
Intents specify what
specific action should be
performed
Intents specify what
specific action should be
performed
Activity is the presentation
layer of your app: there will
be one per screen, and the
Views provide the UI to the
activity
Activity is the presentation
layer of your app: there will
be one per screen, and the
Views provide the UI to the
activity
Bruce Scharlau, University of Aberdeen, 2010
There is a common file structure
for applications
code
images
files
UI layouts
constants
Autogenerated
resource list
Bruce Scharlau, University of Aberdeen, 2010
Standard components form
building blocks for Android apps
Other applications
Has life-cycle
screen
App to handle content
Background app
Like music player
Views
manifest
Activity
Intents
Service
Notifications
ContentProviders
Bruce Scharlau, University of Aberdeen, 2010
The AndroidManifest lists
application details
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.my_domain.app.helloactivity">
<application android:label="@string/app_name">
<activity android:name=".HelloActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category
android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
Bruce Scharlau, University of Aberdeen, 2010
Activity is one thing you can do
From fundamentals page in sdk
Bruce Scharlau, University of Aberdeen, 2010
Intent provides late running
binding to other apps
It can be thought of as the glue between
activities. It is basically a passive data
structure holding an abstract description of
an action to be performed.
Written as action/data pairs such as:
VIEW_ACTION/ACTION content://contacts/1
Written as action/data pairs such as:
VIEW_ACTION/ACTION content://contacts/1
Bruce Scharlau, University of Aberdeen, 2010
Services declared in the manifest
and provide support
Services run in the background:
Music player providing the music playing in
an audio application
Services run in the background:
Music player providing the music playing in
an audio application
Intensive background apps, might need to
spawn their own thread so as to not block
the application
Intensive background apps, might need to
spawn their own thread so as to not block
the application
Bruce Scharlau, University of Aberdeen, 2010
Notifications let you know of
background events
This way you know that an SMS arrived,
or that your phone is ringing, and the
MP3 player should pause
This way you know that an SMS arrived,
or that your phone is ringing, and the
MP3 player should pause
Bruce Scharlau, University of Aberdeen, 2010
ContentProviders share data
You need one if your application shares data
with other applications
You need one if your application shares data
with other applications
This way you can share the contact list with the
IM application
This way you can share the contact list with the
IM application
If you don’t need to share data, then you can
use SQLlite database
If you don’t need to share data, then you can
use SQLlite database
Bruce Scharlau, University of Aberdeen, 2010
UI layouts are in Java and XML
setContentView(R.layout.hello_activity); //will load the XML UI file
Bruce Scharlau, University of Aberdeen, 2010
Security in Android follows
standard Linux guidelines
Each application runs in its own processEach application runs in its own process
Process permissions are enforced at user
and group IDs assigned to processes
Process permissions are enforced at user
and group IDs assigned to processes
Finer grained permissions are then
granted (revoked) per operations
Finer grained permissions are then
granted (revoked) per operations
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.android.app.myapp" >
<uses-permission id="android.permission.RECEIVE_SMS" />
</manifest>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.android.app.myapp" >
<uses-permission id="android.permission.RECEIVE_SMS" />
</manifest>

Mais conteúdo relacionado

Destaque

Regional &amp; sub regional frame
Regional &amp; sub regional frameRegional &amp; sub regional frame
Regional &amp; sub regional frameKapil Prashant
 
We speack, we impact
We speack, we impactWe speack, we impact
We speack, we impactsergiodbotero
 
Obszar nr 1 ruch w szkole konspekt 2
Obszar nr 1 ruch w szkole konspekt 2Obszar nr 1 ruch w szkole konspekt 2
Obszar nr 1 ruch w szkole konspekt 2sp11bialystok
 
Silver Trade Center-Curtain Wall, Aluminum Composite Panel and Tempered Glass
Silver Trade Center-Curtain Wall, Aluminum Composite Panel and Tempered GlassSilver Trade Center-Curtain Wall, Aluminum Composite Panel and Tempered Glass
Silver Trade Center-Curtain Wall, Aluminum Composite Panel and Tempered GlassJAGW-AlucoGlass
 
المناصب الشاغرة لمؤسسات التعليم الابتدائي لسنة 2016
المناصب الشاغرة لمؤسسات التعليم الابتدائي لسنة 2016المناصب الشاغرة لمؤسسات التعليم الابتدائي لسنة 2016
المناصب الشاغرة لمؤسسات التعليم الابتدائي لسنة 2016CMCF(Centre Maroco-Coréen de Formation en TICE)
 
Year end dohatweetup
Year end dohatweetupYear end dohatweetup
Year end dohatweetupDohaTweetups
 
The Morgan Legacy, Chapter 2: School and Spouse
The Morgan Legacy, Chapter 2: School and SpouseThe Morgan Legacy, Chapter 2: School and Spouse
The Morgan Legacy, Chapter 2: School and Spousefireflowersims
 
Κεφάλαιο 2
Κεφάλαιο 2Κεφάλαιο 2
Κεφάλαιο 2fgousios
 
Eldin soal jawab
Eldin soal jawabEldin soal jawab
Eldin soal jawabWahid Azila
 

Destaque (17)

Regional &amp; sub regional frame
Regional &amp; sub regional frameRegional &amp; sub regional frame
Regional &amp; sub regional frame
 
We speack, we impact
We speack, we impactWe speack, we impact
We speack, we impact
 
Tugas 4
Tugas 4Tugas 4
Tugas 4
 
Obszar nr 1 ruch w szkole konspekt 2
Obszar nr 1 ruch w szkole konspekt 2Obszar nr 1 ruch w szkole konspekt 2
Obszar nr 1 ruch w szkole konspekt 2
 
Addendum Catalogue 2013
Addendum Catalogue 2013Addendum Catalogue 2013
Addendum Catalogue 2013
 
Silver Trade Center-Curtain Wall, Aluminum Composite Panel and Tempered Glass
Silver Trade Center-Curtain Wall, Aluminum Composite Panel and Tempered GlassSilver Trade Center-Curtain Wall, Aluminum Composite Panel and Tempered Glass
Silver Trade Center-Curtain Wall, Aluminum Composite Panel and Tempered Glass
 
Chapter 2 scm
Chapter 2 scmChapter 2 scm
Chapter 2 scm
 
المناصب الشاغرة لمؤسسات التعليم الابتدائي لسنة 2016
المناصب الشاغرة لمؤسسات التعليم الابتدائي لسنة 2016المناصب الشاغرة لمؤسسات التعليم الابتدائي لسنة 2016
المناصب الشاغرة لمؤسسات التعليم الابتدائي لسنة 2016
 
Year end dohatweetup
Year end dohatweetupYear end dohatweetup
Year end dohatweetup
 
The Morgan Legacy, Chapter 2: School and Spouse
The Morgan Legacy, Chapter 2: School and SpouseThe Morgan Legacy, Chapter 2: School and Spouse
The Morgan Legacy, Chapter 2: School and Spouse
 
Κεφάλαιο 2
Κεφάλαιο 2Κεφάλαιο 2
Κεφάλαιο 2
 
NSW Secondary Principals
NSW Secondary PrincipalsNSW Secondary Principals
NSW Secondary Principals
 
Micronutrientes
MicronutrientesMicronutrientes
Micronutrientes
 
Pavan tabbu- ppt.
Pavan   tabbu- ppt.Pavan   tabbu- ppt.
Pavan tabbu- ppt.
 
Eldin soal jawab
Eldin soal jawabEldin soal jawab
Eldin soal jawab
 
Jawapan (1)
Jawapan (1)Jawapan (1)
Jawapan (1)
 
77 el arb.-
77 el arb.-77 el arb.-
77 el arb.-
 

Semelhante a Google Android Mobile Computing

Mobile Application Development-Lecture 01 & 02.pdf
Mobile Application Development-Lecture 01 & 02.pdfMobile Application Development-Lecture 01 & 02.pdf
Mobile Application Development-Lecture 01 & 02.pdfAbdullahMunir32
 
Mobile Application Development Lecture 05 & 06.pdf
Mobile Application Development Lecture 05 & 06.pdfMobile Application Development Lecture 05 & 06.pdf
Mobile Application Development Lecture 05 & 06.pdfAbdullahMunir32
 
Nativa Android Applications development
Nativa Android Applications developmentNativa Android Applications development
Nativa Android Applications developmentAlfredo Morresi
 
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARIMOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARISivaSankari36
 
Google android white paper
Google android white paperGoogle android white paper
Google android white paperSravan Reddy
 
Mobile Application Development -Lecture 11 & 12.pdf
Mobile Application Development -Lecture 11 & 12.pdfMobile Application Development -Lecture 11 & 12.pdf
Mobile Application Development -Lecture 11 & 12.pdfAbdullahMunir32
 
First Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionFirst Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionCesar Augusto Nogueira
 
Mobility Solutions - Development of Hybrid Mobile Applications with HTML
Mobility Solutions - Development of Hybrid Mobile Applications with HTMLMobility Solutions - Development of Hybrid Mobile Applications with HTML
Mobility Solutions - Development of Hybrid Mobile Applications with HTMLMindteck (India) Limited
 
B041130610
B041130610B041130610
B041130610IOSR-JEN
 
Android by Ravindra J.Mandale
Android by Ravindra J.MandaleAndroid by Ravindra J.Mandale
Android by Ravindra J.MandaleRavindra Mandale
 
android app development training report
android app development training reportandroid app development training report
android app development training reportRishita Jaggi
 
Blending Creativity and Technology With Android App Development
Blending Creativity and Technology With Android App DevelopmentBlending Creativity and Technology With Android App Development
Blending Creativity and Technology With Android App Developmentamanraza23
 
Android 1-intro n architecture
Android 1-intro n architectureAndroid 1-intro n architecture
Android 1-intro n architectureDilip Singh
 

Semelhante a Google Android Mobile Computing (20)

android
androidandroid
android
 
Mc android
Mc androidMc android
Mc android
 
Mobile Application Development-Lecture 01 & 02.pdf
Mobile Application Development-Lecture 01 & 02.pdfMobile Application Development-Lecture 01 & 02.pdf
Mobile Application Development-Lecture 01 & 02.pdf
 
Mobile Application Development Lecture 05 & 06.pdf
Mobile Application Development Lecture 05 & 06.pdfMobile Application Development Lecture 05 & 06.pdf
Mobile Application Development Lecture 05 & 06.pdf
 
Nativa Android Applications development
Nativa Android Applications developmentNativa Android Applications development
Nativa Android Applications development
 
Android
AndroidAndroid
Android
 
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARIMOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
MOBILE APPLICATIONS DEVELOPMENT -ANDROID BY SIVASANKARI
 
Android Introduction by Kajal
Android Introduction by KajalAndroid Introduction by Kajal
Android Introduction by Kajal
 
Google android white paper
Google android white paperGoogle android white paper
Google android white paper
 
Mobile Application Development -Lecture 11 & 12.pdf
Mobile Application Development -Lecture 11 & 12.pdfMobile Application Development -Lecture 11 & 12.pdf
Mobile Application Development -Lecture 11 & 12.pdf
 
First Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting IntroductionFirst Steps with Android - An Exciting Introduction
First Steps with Android - An Exciting Introduction
 
Mobility Solutions - Development of Hybrid Mobile Applications with HTML
Mobility Solutions - Development of Hybrid Mobile Applications with HTMLMobility Solutions - Development of Hybrid Mobile Applications with HTML
Mobility Solutions - Development of Hybrid Mobile Applications with HTML
 
B041130610
B041130610B041130610
B041130610
 
Android by Ravindra J.Mandale
Android by Ravindra J.MandaleAndroid by Ravindra J.Mandale
Android by Ravindra J.Mandale
 
android app development training report
android app development training reportandroid app development training report
android app development training report
 
Android
AndroidAndroid
Android
 
Blending Creativity and Technology With Android App Development
Blending Creativity and Technology With Android App DevelopmentBlending Creativity and Technology With Android App Development
Blending Creativity and Technology With Android App Development
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
 
Hybrid mobile app
Hybrid mobile appHybrid mobile app
Hybrid mobile app
 
Android 1-intro n architecture
Android 1-intro n architectureAndroid 1-intro n architecture
Android 1-intro n architecture
 

Último

Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...anjaliyadav012327
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room servicediscovermytutordmt
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 

Último (20)

Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 

Google Android Mobile Computing

  • 1. Bruce Scharlau, University of Aberdeen, 2010 Google Android Mobile Computing Based on android-sdk_2.2
  • 2. Bruce Scharlau, University of Aberdeen, 2010 Android is part of the ‘build a better phone’ process Open Handset Alliance produces Android Open Handset Alliance produces Android Comprises handset manufacturers, software firms, mobile operators, and other manufactures and funding companies Comprises handset manufacturers, software firms, mobile operators, and other manufactures and funding companies http://www.openhandsetalliance.com/
  • 3. Bruce Scharlau, University of Aberdeen, 2010 Android is growing http://metrics.admob.com/wp-content/uploads/2010/06/May-2010-AdMob-Mobile-Metrics-Highlights.pdf Does not include iTouch or iPad, as not smartphones Uneven distribution of OS by regions
  • 4. Bruce Scharlau, University of Aberdeen, 2010 Android makes mobile Java easier http://code.google.com/android/goodies/index.html Well, sort of…
  • 5. Bruce Scharlau, University of Aberdeen, 2010 Android applications are written in Java package com.google.android.helloactivity; import android.app.Activity; import android.os.Bundle; public class HelloActivity extends Activity { public HelloActivity() { } @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.hello_activity); } }
  • 6. Bruce Scharlau, University of Aberdeen, 2010 Android applications are compiled to Dalvik bytecode Write app in JavaWrite app in Java Compiled in JavaCompiled in Java Transformed to Dalvik bytecodeTransformed to Dalvik bytecode Linux OSLinux OS Loaded into Dalvik VMLoaded into Dalvik VM
  • 7. Code for intent passing messages Bruce Scharlau, University of Aberdeen, 2010
  • 8. First activity • Button search = (Button) findViewById(R.id.btnSearch); search.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { Intent intent = new Intent(Search.this, SearchResults.class); Bundle b = new Bundle(); EditText txt1 = (EditText) findViewById(R.id.edittext); EditText txt2 = (EditText) findViewById(R.id.edittext2); b.putString("name", txt1.getText().toString()); b.putInt("state", Integer.parseInt(txt2.getText().toString())); //Add the set of extended data to the intent and start it intent.putExtras(b); startActivity(intent); } }); Bruce Scharlau, University of Aberdeen, 2010
  • 9. Second activity • @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.search_results); • Bundle b = getIntent().getExtras(); int value = b.getInt("state", 0); String name = b.getString("name"); TextView vw1 = (TextView) findViewById(R.id.txtName); TextView vw2 = (TextView) findViewById(R.id.txtState); vw1.setText("Name: " + name); vw2.setText("State: " + String.valueOf(value)); } Bruce Scharlau, University of Aberdeen, 2010
  • 10. Bruce Scharlau, University of Aberdeen, 2010 The Dalvik runtime is optimised for mobile applications Run multiple VMs efficientlyRun multiple VMs efficiently Each app has its own VMEach app has its own VM Minimal memory footprintMinimal memory footprint
  • 11. Bruce Scharlau, University of Aberdeen, 2010 Android has many components
  • 12. Can assume that most have android 2.1 or 2.2 Bruce Scharlau, University of Aberdeen, 2010 http://developer.android.com/resources/dashboard/platform-versions.html
  • 13. Bruce Scharlau, University of Aberdeen, 2010 Android has a working emulator
  • 14. Bruce Scharlau, University of Aberdeen, 2010 All applications are written in Java and available to each other Android designed to enable reuse of components in other applications Android designed to enable reuse of components in other applications Each application can publish its capabilities which other apps can use Each application can publish its capabilities which other apps can use
  • 15. Bruce Scharlau, University of Aberdeen, 2010 Android applications have common structureViews such as lists, grids, text boxes, buttons, and even an embeddable web browser Views such as lists, grids, text boxes, buttons, and even an embeddable web browser Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data A Resource Manager, providing access to non- code resources such as localized strings, graphics, and layout files A Resource Manager, providing access to non- code resources such as localized strings, graphics, and layout files A Notification Manager that enables all apps to display custom alerts in the status bar A Notification Manager that enables all apps to display custom alerts in the status bar An Activity Manager that manages the life cycle of applications and provides a common navigation backstack An Activity Manager that manages the life cycle of applications and provides a common navigation backstack
  • 16. Bruce Scharlau, University of Aberdeen, 2010 Android applications have common structure Broadcast receivers can trigger intents that start an application Broadcast receivers can trigger intents that start an application Data storage provide data for your apps, and can be shared between apps – database, file, and shared preferences (hash map) used by group of applications Data storage provide data for your apps, and can be shared between apps – database, file, and shared preferences (hash map) used by group of applications Services run in the background and have no UI for the user – they will update data, and trigger events Services run in the background and have no UI for the user – they will update data, and trigger events Intents specify what specific action should be performed Intents specify what specific action should be performed Activity is the presentation layer of your app: there will be one per screen, and the Views provide the UI to the activity Activity is the presentation layer of your app: there will be one per screen, and the Views provide the UI to the activity
  • 17. Bruce Scharlau, University of Aberdeen, 2010 There is a common file structure for applications code images files UI layouts constants Autogenerated resource list
  • 18. Bruce Scharlau, University of Aberdeen, 2010 Standard components form building blocks for Android apps Other applications Has life-cycle screen App to handle content Background app Like music player Views manifest Activity Intents Service Notifications ContentProviders
  • 19. Bruce Scharlau, University of Aberdeen, 2010 The AndroidManifest lists application details <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.my_domain.app.helloactivity"> <application android:label="@string/app_name"> <activity android:name=".HelloActivity"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity> </application>
  • 20. Bruce Scharlau, University of Aberdeen, 2010 Activity is one thing you can do From fundamentals page in sdk
  • 21. Bruce Scharlau, University of Aberdeen, 2010 Intent provides late running binding to other apps It can be thought of as the glue between activities. It is basically a passive data structure holding an abstract description of an action to be performed. Written as action/data pairs such as: VIEW_ACTION/ACTION content://contacts/1 Written as action/data pairs such as: VIEW_ACTION/ACTION content://contacts/1
  • 22. Bruce Scharlau, University of Aberdeen, 2010 Services declared in the manifest and provide support Services run in the background: Music player providing the music playing in an audio application Services run in the background: Music player providing the music playing in an audio application Intensive background apps, might need to spawn their own thread so as to not block the application Intensive background apps, might need to spawn their own thread so as to not block the application
  • 23. Bruce Scharlau, University of Aberdeen, 2010 Notifications let you know of background events This way you know that an SMS arrived, or that your phone is ringing, and the MP3 player should pause This way you know that an SMS arrived, or that your phone is ringing, and the MP3 player should pause
  • 24. Bruce Scharlau, University of Aberdeen, 2010 ContentProviders share data You need one if your application shares data with other applications You need one if your application shares data with other applications This way you can share the contact list with the IM application This way you can share the contact list with the IM application If you don’t need to share data, then you can use SQLlite database If you don’t need to share data, then you can use SQLlite database
  • 25. Bruce Scharlau, University of Aberdeen, 2010 UI layouts are in Java and XML setContentView(R.layout.hello_activity); //will load the XML UI file
  • 26. Bruce Scharlau, University of Aberdeen, 2010 Security in Android follows standard Linux guidelines Each application runs in its own processEach application runs in its own process Process permissions are enforced at user and group IDs assigned to processes Process permissions are enforced at user and group IDs assigned to processes Finer grained permissions are then granted (revoked) per operations Finer grained permissions are then granted (revoked) per operations <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.google.android.app.myapp" > <uses-permission id="android.permission.RECEIVE_SMS" /> </manifest> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.google.android.app.myapp" > <uses-permission id="android.permission.RECEIVE_SMS" /> </manifest>