Exploring the World of Mobile Computing

undefined
1
Mobile Computing
 
 
2
Presentation Outline
W
h
a
t
 
i
s
 
m
o
b
i
l
e
 
c
o
m
p
u
t
i
n
g
?
C
o
m
p
a
r
i
s
o
n
 
t
o
 
w
i
r
e
d
 
n
e
t
w
o
r
k
s
W
h
y
 
g
o
 
m
o
b
i
l
e
?
T
y
p
e
s
 
o
f
 
w
i
r
e
l
e
s
s
 
d
e
v
i
c
e
s
M
o
b
i
l
e
 
o
b
j
e
c
t
s
A
p
p
l
i
c
a
t
i
o
n
s
 
o
f
 
m
o
b
i
l
e
 
c
o
m
p
u
t
i
n
g
C
h
a
l
l
e
n
g
e
s
F
u
t
u
r
e
 
o
f
 
m
o
b
i
l
e
 
c
o
m
p
u
t
i
n
g
C
o
n
c
l
u
s
i
o
n
3
What Is Mobile Computing?
What is computing?
 
 
 
O
p
e
r
a
t
i
o
n
 
o
f
 
c
o
m
p
u
t
e
r
s
 
(
a
c
c
o
r
d
i
n
g
 
t
o
 
o
x
f
o
r
d
s
 
a
d
v
a
n
c
e
l
e
a
r
n
e
r
s
 
d
i
c
t
i
o
n
a
r
y
)
What is the mobile?
 
 
 
T
h
a
t
 
s
o
m
e
o
n
e
 
/
s
o
m
e
t
h
i
n
g
 
c
a
n
 
m
o
v
e
 
o
r
 
b
e
 
m
o
v
e
d
 
e
a
s
i
l
y
 
a
n
d
q
u
i
c
k
l
y
 
f
r
o
m
 
p
l
a
c
e
 
t
o
 
p
l
a
c
e
What is mobile computing?
 
 
 
U
s
e
r
s
 
w
i
t
h
 
p
o
r
t
a
b
l
e
 
c
o
m
p
u
t
e
r
s
 
s
t
i
l
l
 
h
a
v
e
 
n
e
t
w
o
r
k
c
o
n
n
e
c
t
i
o
n
s
 
w
h
i
l
e
 
t
h
e
y
 
m
o
v
e
4
What Is Mobile Computing?
(Cont.)
A
 
s
i
m
p
l
e
 
d
e
f
i
n
i
t
i
o
n
 
c
o
u
l
d
 
b
e
:
M
o
b
i
l
e
 
C
o
m
p
u
t
i
n
g
 
i
s
 
u
s
i
n
g
 
a
 
c
o
m
p
u
t
e
r
 
(
o
f
 
o
n
e
 
k
i
n
d
 
o
r
a
n
o
t
h
e
r
)
 
w
h
i
l
e
 
o
n
 
t
h
e
 
m
o
v
e
A
n
o
t
h
e
r
 
d
e
f
i
n
i
t
i
o
n
 
c
o
u
l
d
 
b
e
:
M
o
b
i
l
e
 
C
o
m
p
u
t
i
n
g
 
i
s
 
w
h
e
n
 
a
 
(
w
o
r
k
)
 
p
r
o
c
e
s
s
 
i
s
 
m
o
v
e
d
 
f
r
o
m
a
 
n
o
r
m
a
l
 
f
i
x
e
d
 
p
o
s
i
t
i
o
n
 
t
o
 
a
 
m
o
r
e
 
d
y
n
a
m
i
c
 
p
o
s
i
t
i
o
n
.
A
 
t
h
i
r
d
 
d
e
f
i
n
i
t
i
o
n
 
c
o
u
l
d
 
b
e
:
M
o
b
i
l
e
 
C
o
m
p
u
t
i
n
g
 
i
s
 
w
h
e
n
 
a
 
w
o
r
k
 
p
r
o
c
e
s
s
 
i
s
 
c
a
r
r
i
e
d
 
o
u
t
s
o
m
e
w
h
e
r
e
 
w
h
e
r
e
 
i
t
 
w
a
s
 
n
o
t
 
p
r
e
v
i
o
u
s
l
y
 
p
o
s
s
i
b
l
e
.
5
What Is Mobile Computing?
(Cont.)
M
o
b
i
l
e
 
C
o
m
p
u
t
i
n
g
:
I
s
s
 
 
a
a
n
n
 
 
u
u
m
m
b
b
r
r
e
e
l
l
l
l
a
a
 
 
t
t
e
e
r
r
m
m
 
 
u
u
s
s
e
e
d
d
 
 
t
t
o
o
 
 
d
d
e
e
s
s
c
c
r
r
i
i
b
b
e
e
t
t
e
e
c
c
h
h
n
n
o
o
l
l
o
o
g
g
i
i
e
e
s
s
 
 
t
t
h
h
a
a
t
t
 
 
e
e
n
n
a
a
b
b
l
l
e
e
 
 
p
p
e
e
o
o
p
p
l
l
e
e
 
 
t
t
o
o
 
 
a
a
c
c
c
c
e
e
s
s
s
s
n
n
e
e
t
t
w
w
o
o
r
r
k
k
 
 
s
s
e
e
r
r
v
v
i
i
c
c
e
e
s
s
 
 
a
a
n
n
y
y
p
p
l
l
a
a
c
c
e
e
,
,
 
 
a
a
n
n
y
y
t
t
i
i
m
m
e
e
,
,
 
 
a
a
n
n
d
d
a
a
n
n
y
y
w
w
h
h
e
e
r
r
e
e
.
.
6
Comparison to Wired Net.
W
i
r
e
d
 
N
e
t
w
o
r
k
s
-
h
i
g
h
 
b
a
n
d
w
i
d
t
h
-
l
o
w
 
b
a
n
d
w
i
d
t
h
 
v
a
r
i
a
b
i
l
i
t
y
-
c
a
n
 
l
i
s
t
e
n
 
o
n
 
w
i
r
e
-
h
i
g
h
 
p
o
w
e
r
 
m
a
c
h
i
n
e
s
-
h
i
g
h
 
r
e
s
o
u
r
c
e
 
m
a
c
h
i
n
e
s
-
n
e
e
d
 
p
h
y
s
i
c
a
l
 
a
c
c
e
s
s
(
s
e
c
.
-
l
o
w
 
d
e
l
a
y
-
c
o
n
n
e
c
t
e
d
 
o
p
e
r
a
t
i
o
n
M
o
b
i
l
e
 
N
e
t
w
o
r
k
s
-
l
o
w
 
b
a
n
d
w
i
d
t
h
-
h
i
g
h
 
b
a
n
d
w
i
d
t
h
 
v
a
r
i
a
b
i
l
i
t
y
-
h
i
d
d
e
n
 
t
e
r
m
i
n
a
l
 
p
r
o
b
l
e
m
-
l
o
w
 
p
o
w
e
r
 
m
a
c
h
i
n
e
s
-
l
o
w
 
r
e
s
o
u
r
c
e
 
m
a
c
h
i
n
e
s
-
n
e
e
d
 
p
r
o
x
i
m
i
t
y
-
h
i
g
h
e
r
 
d
e
l
a
y
-
d
i
s
c
o
n
n
e
c
t
e
d
 
o
p
e
r
a
t
i
o
n
7
Why Go Mobile?
E
n
a
b
l
e
 
a
n
y
w
h
e
r
e
/
a
n
y
t
i
m
e
 
c
o
n
n
e
c
t
i
v
i
t
y
B
r
i
n
g
 
c
o
m
p
u
t
e
r
 
c
o
m
m
u
n
i
c
a
t
i
o
n
s
 
t
o
 
a
r
e
a
s
w
i
t
h
o
u
t
 
p
r
e
-
e
x
i
s
t
i
n
g
 
i
n
f
r
a
s
t
r
u
c
t
u
r
e
E
n
a
b
l
e
 
m
o
b
i
l
i
t
y
E
n
a
b
l
e
 
n
e
w
 
a
p
p
l
i
c
a
t
i
o
n
s
A
n
 
e
x
c
i
t
i
n
g
 
n
e
w
 
r
e
s
e
a
r
c
h
 
a
r
e
a
8
Types of Wireless Devices
Laptops
Palmtops
PDAs
Cell phones
Pagers ??? Read more
A
 
p
a
g
e
r
 
(
a
l
s
o
 
k
n
o
w
n
 
a
s
 
a
 
b
e
e
p
e
r
)
 
i
s
 
a
 
w
i
r
e
l
e
s
s
 
telecommunications
 device that receives and displays
 numeric messages and/or receives and announces voice messages.
Sensors
9
Mobile Objects
A mobile object is
some code that carries
a state
10
Mobile Objects (Cont.)
A mobile object is
some code that carries
a state
that lives on a host
11
Mobile Objects (Cont.)
A mobile object is
some code that carries
a state
Lives in a host
That visits places 
12
Mobile Objects (Cont.)
A mobile object is
some code that carries
a state
Lives in a host
That visits places
which is let in when
trusted
13
Mobile Objects (Cont.)
A mobile object is
some code that carries
a state
Lives in a host
That visits places
which is let in when
trusted
and barred when
untrusted
14
Mobile Objects (Cont.)
A mobile object is some
code that carries a state
Lives in a host
That visits places
which is let in when
trusted
and barred when
untrusted
and will refuse to go to
untrustworthy places
15
Mobile Objects (Cont.)
Mobile objects can
talk to their friends
16
Mobile Objects (Cont.)
Mobile objects can
talk to their friends
but only by co-
operation of the hosts
17
Applications of Mobile Computing
E
m
e
r
g
e
n
c
y
 
 
s
e
r
v
i
c
e
s
 
18
Applications of Mobile Computing
(Cont.)
F
o
r
 
E
s
t
a
t
e
 
A
g
e
n
t
s
I
n
 
c
o
u
r
t
s
I
n
 
c
o
m
p
a
n
i
e
s
S
t
o
c
k
 
I
n
f
o
r
m
a
t
i
o
n
 
C
o
l
l
e
c
t
i
o
n
/
C
o
n
t
r
o
l
C
r
e
d
i
t
 
C
a
r
d
 
V
e
r
i
f
i
c
a
t
i
o
n
T
a
x
i
/
T
r
u
c
k
 
D
i
s
p
a
t
c
h
E
l
e
c
t
r
o
n
i
c
 
M
a
i
l
/
P
a
g
i
n
g
19
Challenges
D
i
s
c
o
n
n
e
c
t
i
o
n
L
o
w
 
b
a
n
d
w
i
d
t
h
H
i
g
h
 
b
a
n
d
w
i
d
t
h
 
v
a
r
i
a
b
i
l
i
t
y
L
o
w
 
p
o
w
e
r
 
a
n
d
 
r
e
s
o
u
r
c
e
s
S
e
c
u
r
i
t
y
 
r
i
s
k
s
W
i
d
e
 
v
a
r
i
e
t
y
 
t
e
r
m
i
n
a
l
s
 
a
n
d
 
d
e
v
i
c
e
s
 
w
i
t
h
d
i
f
f
e
r
e
n
t
 
c
a
p
a
b
i
l
i
t
i
e
s
D
e
v
i
c
e
 
a
t
t
r
i
b
u
t
e
s
F
i
t
 
m
o
r
e
 
f
u
n
c
t
i
o
n
a
l
i
t
y
 
i
n
t
o
 
s
i
n
g
l
e
,
 
s
m
a
l
l
e
r
d
e
v
i
c
e
20
Future of Mobile Computing
Use of 
Artificial Intelligence
Integrated Circuitry
 -> Compact Size
Increases in Computer Processor
speeds
Features of Android
Android can run multiple apps at the Same Time
Also support optimized graphics VGA, 2D graphics and 3D
graphics
Android has a better app market
Android lets you change your settings faster
It gives you more options to fit your budget
Android keeps information visible on your home screen.
Android also support Java applications.
22
Conclusion
Mobile computing has severe limitations
- however, it is far from impossible, and
technology improves all the time
Lots of challenges
- some have (good) solutions, many
others are still
 
waiting to be solved
23
Thank You
Q
u
e
s
t
i
o
n
s
 
a
n
d
C
o
m
m
e
n
t
s
?
undefined
Android Development
Training for Beginners
FIRST DAY MODULE
By: Joemarie Comeros Amparo
undefined
Outline:
  Overview on Android
  Installing ADT on Eclipse
  Explore Project Components
  Sample Android Project
  Running Android Project
Android is an open  mobile phone platform that was
developed by Google and later by Open Handset
Alliance. Google defines Android as a "software
stack"  for mobile phones.
Software stack is made up  of operating system(the
platform on which everything runs), the middleware
(the programming that allows applications to talk to
a network and to one another) and the applications
(the actual programs that phone will run)
July 2005 - Google Inc.  bought from Danger Inc.
Open Handset Alliance was formed headed by  Google
which is composed of companies like Intel, T-
Mobile, Spring Nextel and more.
In 2008, Android became available as an open source
and ASOP(Android Open Source Project) is
responsible for maintaining  and development of
android.
February 2009, the first android version was released,
Android 1.1. for Mobile G1.
Android 1.1
Android 1.5 Cupcake
Android 1.6 Donut
Android 2.0/2.1 Eclair
Android 2.2.x Froyo
Android 2.3.x Gingerbread
Android 3. x Honeycomb
Android 4.0.x Ice Cream Sandwich
Android 4.1 Jelly Bean
Note: When developing an application, consider the market share of the android version. The
higher the market share, the higher number your target market is.
Note: Based on my development experience, ADT can run on at least Dual Core with at
least 2GB RAM.
Please refer to:
          
www.developershaven.net
p
u
b
l
i
c
 
c
l
a
s
s
 
C
C
S
A
c
t
i
v
i
t
y
 
e
x
t
e
n
d
s
 
A
c
t
i
v
i
t
y
{
    @Override
 
 
 
 
p
u
b
l
i
c
 
v
o
i
d
 
o
n
C
r
e
a
t
e
(
B
u
n
d
l
e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
 
 
 
{
 
 
 
 
 
 
 
 
s
u
p
e
r
.
o
n
C
r
e
a
t
e
(
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
;
        setContentView(R.layout.
main);
    }
}
Run in the background
Can continue even if Activity that started it dies
Should be used if something needs to be done while the
user is not interacting with application
Otherwise, a thread is probably more applicable
Should create a new thread in the service to do work in,
since the service runs in the main thread
Can be bound to an application
In which case will terminate when all applications bound to
it unbind
Allows multiple applications to communicate with it via a
common interface
Needs to be declared in manifest file
Like Activities, has a structured life cycle
Auto-generated: 
YOUR SHOULD’NT EDIT IT!
Contains IDs of the project resources
Enforces good software engineering
Use findViewById and Resources object to get
access to the resources
Ex. Button b = (Button)findViewById(R.id.button1)
Ex. getResources().getString(R.string.
hello
));
Eclipse has a great UI creator
Generates the XML for you
Composed of 
View
 objects
Can be specified for portrait and landscape
mode
Use same file name, so can make completely
different UIs for the orientations without
modifying any code
<?xml version=
"1.0" encoding="utf-8"?>
<
LinearLayout
xmlns:android=
"http://schemas.android.com/ap
k/res/android"
    android:layout_width=
"fill_parent"
    android:layout_height=
"fill_parent"
    android:orientation=
"vertical" >
    <
TextView
        android:layout_width=
"fill_parent"
        android:layout_height=
"wrap_content"
        android:text=
"
@string/hello
"
        android:id=
"@+id/tv_hello"/>
    <
TextView
        android:id=
"@+id/textView1"
        android:layout_width=
"wrap_content"
        android:layout_height=
"wrap_content"
        android:text=
"Large Text“
android:textAppearance=
"?android:attr/textApp
earanceLarge"/>
</LinearLayout>
res/values/string.xml
1. Lunching a new activity without  expecting without expecting a result
2. Lunching a new activity and expecting a result when it finished.
CalledActivity.class
On Eclipse IDE. Go To File >
New > Project > Android
Project
See image at the side for the
prompt that appear.  Click
next button.
Select android version.
 
Tip: select the latest OS
version available. You can
add minimum and target SDK
on your manifest file to
support earlier android
versions.
Provide package name of
your project. Valid package
name consist of two names
separated by a period.
Provide package name of
your project. Valid package
name consist of two names
separated by a period.
Optional: Change minimum
SDK for the lowest android
version your application will
support.
Hit on finish
Under res/layout on your
project explorer. Open
main.xml.  Create a layout
like this:
In main.xml:
<?xml version=
"1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
    android:layout_width=
"fill_parent"
    android:layout_height=
"fill_parent"
    android:orientation=
"vertical" >
    <TextView
        android:layout_width=
"fill_parent"
        android:layout_height=
"wrap_content"
        android:text=
"@string/hello" />
    <LinearLayout
        android:layout_width=
"match_parent"
        android:layout_height=
"wrap_content" >
        <Button
            android:id=
"@+id/button1"
            android:layout_width=
"wrap_content"
            android:layout_height=
"wrap_content"
            android:text=
"@string/button1" />
        <Button
            android:id=
"@+id/button2"
            android:layout_width=
"wrap_content"
            android:layout_height=
"wrap_content"
            
android:text=
"Button 2" />
        <Button
            android:id=
"@+id/button3"
            android:layout_width=
"wrap_content"
            android:layout_height=
"wrap_content"
            
android:text=
"Button 3" />
    </LinearLayout>
    
<EditText
        android:id=
"@+id/editText1"
        android:layout_width=
"match_parent"
        android:layout_height=
"wrap_content"
        android:ems=
"10" >
        <requestFocus />
    </EditText>
</LinearLayout>
Under res/values on your
project explorer. Open
strings.xml.
<?xml version=
"1.0" encoding="utf-8"?>
<resources>
    <string name=
"hello">Hello World, SampleProjectActivity!</string>
    <string name=
"app_name">SampleProject</string>
    <string name=
"button1">Button 1 Clicked.</string>
</resources>
NOTE: string with name button1 is being referenced by Button 1 android:text property.
See main.xml in your layout.
Under SRC on your project
explorer. Open
SampleProjectActivity.java.
Change code to this:
See comments for better
understand.
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
a
p
p
.
A
c
t
i
v
i
t
y
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
I
n
t
e
n
t
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
o
s
.
B
u
n
d
l
e
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
v
i
e
w
.
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
V
i
e
w
.
O
n
C
l
i
c
k
L
i
s
t
e
n
e
r
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
B
u
t
t
o
n
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
E
d
i
t
T
e
x
t
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
T
o
a
s
t
;
p
u
b
l
i
c
 
c
l
a
s
s
 
S
a
m
p
l
e
P
r
o
j
e
c
t
A
c
t
i
v
i
t
y
 
e
x
t
e
n
d
s
 
A
c
t
i
v
i
t
y
 
i
m
p
l
e
m
e
n
t
s
 
O
n
C
l
i
c
k
L
i
s
t
e
n
e
r
{
    /** Called when the activity is first created. */
    @Override
 
 
 
 
p
u
b
l
i
c
 
v
o
i
d
 
o
n
C
r
e
a
t
e
(
B
u
n
d
l
e
 
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
 
{
 
 
 
 
 
 
 
 
s
u
p
e
r
.
o
n
C
r
e
a
t
e
(
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
;
        setContentView(R.layout.
main);
 
 
 
 
 
 
 
 
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
t
h
i
s
,
 
"
H
e
l
l
o
.
"
,
 
T
o
a
s
t
.
L
E
N
G
T
H
_
L
O
N
G
)
.
s
h
o
w
(
)
;
        //referencing components in our layout as set in setContentView, - main.xml
        //findViewById is used hence we components in our layout will be called
        //through their 
ids as set in android:id properties. See main.xml in your layout.
        Button btn1 = (Button)findViewById(R.id.
button1);
        //one way in handling click event
 
 
 
 
 
 
 
 
b
t
n
1
.
s
e
t
O
n
C
l
i
c
k
L
i
s
t
e
n
e
r
(
n
e
w
 
V
i
e
w
.
O
n
C
l
i
c
k
L
i
s
t
e
n
e
r
(
)
 
{
            @Override
 
 
 
 
 
 
 
 
 
 
 
 
p
u
b
l
i
c
 
v
o
i
d
 
o
n
C
l
i
c
k
(
V
i
e
w
 
v
)
 
{
                //Toast is a prompt that will notify user of what has happened in the
application
                //but not requiring user an action.
                Toast.
makeText(getApplication(), "Button 1 Clicked",
Toast.LENGTH_LONG).show();
            }
        });
        Button btn2 = (Button)findViewById(R.id.
button2);
        Button btn3 = (Button)findViewById(R.id.
button3);
        //Other way of handling event inside an activity
 
 
 
 
 
 
 
 
b
t
n
2
.
s
e
t
O
n
C
l
i
c
k
L
i
s
t
e
n
e
r
(
t
h
i
s
)
;
 
 
 
 
 
 
 
 
b
t
n
3
.
s
e
t
O
n
C
l
i
c
k
L
i
s
t
e
n
e
r
(
t
h
i
s
)
;
    }
    @Override
 
 
 
 
p
u
b
l
i
c
 
v
o
i
d
 
o
n
C
l
i
c
k
(
V
i
e
w
 
v
)
 
{
 
 
 
 
 
 
 
 
/
/
 
T
O
D
O
 
A
u
t
o
-
g
e
n
e
r
a
t
e
d
 
m
e
t
h
o
d
 
s
t
u
b
 
 
 
 
 
 
 
 
s
w
i
t
c
h
(
v
.
g
e
t
I
d
(
)
)
        {
 
 
 
 
 
 
 
 
c
a
s
e
 
R
.
i
d
.
b
u
t
t
o
n
2
:
            EditText editText = (EditText)findViewById(R.id.
editText1);
            editText.setText("Button 2 Clicked!");
 
 
 
 
 
 
 
 
 
 
 
 
b
r
e
a
k
;
 
 
 
 
 
 
 
 
c
a
s
e
 
R
.
i
d
.
b
u
t
t
o
n
3
:
            // Intent with out waiting for result.
            // This is creating a new view and passing the new 
controll to the next view.
 
 
 
 
 
 
 
 
 
 
 
 
I
n
t
e
n
t
 
i
n
t
e
n
t
 
=
 
n
e
w
 
I
n
t
e
n
t
(
t
h
i
s
,
 
N
e
x
t
A
c
t
i
v
i
t
y
.
c
l
a
s
s
)
;
            startActivity(intent);
 
 
 
 
 
 
 
 
 
 
 
 
b
r
e
a
k
;
        }
    }
}
Create NextActivity.java
Right click SRC folder > New
> Class.
Change code to this:
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
a
p
p
.
A
c
t
i
v
i
t
y
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
o
s
.
B
u
n
d
l
e
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
B
u
t
t
o
n
;
i
m
p
o
r
t
 
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
T
e
x
t
V
i
e
w
;
p
u
b
l
i
c
 
c
l
a
s
s
 
N
e
x
t
A
c
t
i
v
i
t
y
 
e
x
t
e
n
d
s
 
A
c
t
i
v
i
t
y
{
    @Override
 
 
 
 
p
u
b
l
i
c
 
v
o
i
d
 
o
n
C
r
e
a
t
e
(
B
u
n
d
l
e
 
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
{
 
 
 
 
 
 
 
 
s
u
p
e
r
.
o
n
C
r
e
a
t
e
(
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
;
        // you can have a new layout. but for this example
        // we will be reusing the main.xml as our layout.
        // we will just manipulate the text to inform user that
        //a new activity has been created.
        setContentView(R.layout.
main);
        // setTitle - change the title of the next view
        setTitle("Next Activity");
        //setting page title
        TextView pageTitle =
(TextView)findViewById(R.id.
pagetitle);
        pageTitle.setText("Hello, You are now in the Next
Activity Class.");
        Button btn1 = (Button)findViewById(R.id.
button1);
        btn1.setText("Option 1");
        Button btn2 = (Button)findViewById(R.id.
button2);
        btn2.setText("Option 2");
        Button btn3 = (Button)findViewById(R.id.
button3);
        btn3.setText("Option 3");
    }
}
Open Manifest.xml in your
project explorer.
Register NextActivity class to
your project.
Your new manifest file must
look like the code at the
side.
Save all the changes
 
<?xml version=
"1.0" encoding="utf-8"?>
<manifest
xmlns:android=
"http://schemas.android.com/apk/re
s/android"
    package=
"com.sample"
    android:versionCode=
"1"
    android:versionName=
"1.0" >
 <uses-sdk android:minSdkVersion=
"8"
android:targetSdkVersion="15"/>
    <application
        android:icon=
"@drawable/ic_launcher"
        android:label=
"@string/app_name" >
        <activity
            android:name=
".SampleBradActivity"
            android:label=
"@string/app_name" >
            <intent-filter>
                <action
android:name=
"android.intent.action.MAIN" />
                <category
android:name=
"android.intent.category.LAUNCHE
R" />
            </intent-filter>
        </activity>
        <activity
            android:name=
".NextActivity"
            android:label=
"@string/app_name" />
    </application>
</manifest>
Right click your project name in your project explorer > RUN AS
> ANDROID APPLICATION.
Emulator will boot up. Wait until home screen is shown.
Your application will be displayed on the screen.
You can now enjoy the application.
Congratulations!!!
 
Installation:  
http://developershaven.net
Google API: 
http://mfarhan133.wordpress.com/2010/10/01/generate-google-maps-api-key-for-android/
Android Developer’s Website 
: http://developer.android.com/index.html
Numerous Forums & other developer sites, including:
http://www.javacodegeeks.com/2011/02/android-google-maps-tutorial.html
http://efreedom.com/Question/1-6070968/Google-Maps-Api-Directions
http://stackoverflow.com
http://www.anddev.org/google_driving_directions_-_mapview_overlayed-t826.html
Joemarie Comeros Amparo
about.me/joemarieamparo
Skype/Ymail/Gmail : joemarieamparo
Facebook: 
joemarieamparo@yahoo.com
undefined
Chapter 5
MOBILE OPERATING SYSTEM:-
REVELUTION IN MOBILE EXPERIENCE
3-12-2018
Android mobile OS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Slide Note
Embed
Share

Delve into the realm of mobile computing through this comprehensive presentation outline. Discover what mobile computing is, its applications, challenges, and the future of this technology. Compare mobile networks to wired networks, understand why going mobile is essential, and explore various types of wireless devices. Unravel the concept of mobile objects, learn about the advantages of mobile computing, and get insights into the exciting research area it offers.


Uploaded on Sep 27, 2024 | 1 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Mobile Computing 1

  2. Presentation Outline What is mobile computing? Comparison to wired networks Why go mobile? Types of wireless devices Mobile objects Applications of mobile computing Challenges Future of mobile computing Conclusion 2

  3. What Is Mobile Computing? What is computing? Operation of computers (according to oxfords advance learner s dictionary) What is the mobile? That someone /something can move or be moved easily and quickly from place to place What is mobile computing? Users with portable computers still have network connections while they move 3

  4. What Is Mobile Computing? (Cont.) A simple definition could be: Mobile Computing is using a computer (of one kind or another) while on the move Another definition could be: Mobile Computing is when a (work) process is moved from a normal fixed position to a more dynamic position. A third definition could be: Mobile Computing is when a work process is carried out somewhere where it was not previously possible. 4

  5. What Is Mobile Computing? (Cont.) Mobile Computing: Is an umbrella term used to describe technologies that enable people to access network services anyplace, anytime, and anywhere. 5

  6. Comparison to Wired Net. Wired Networks - high bandwidth - low bandwidth variability - can listen on wire - high power machines - high resource machines - need physical access(sec. - low delay - connected operation Mobile Networks - low bandwidth - high bandwidth variability - hidden terminal problem - low power machines - low resource machines - need proximity - higher delay - disconnected operation 6

  7. Why Go Mobile? Enable anywhere/anytime connectivity Bring computer communications to areas without pre-existing infrastructure Enable mobility Enable new applications An exciting new research area 7

  8. Types of Wireless Devices Laptops Palmtops PDAs Cell phones Pagers ??? Read more A pager (also known as a beeper) is a wireless telecommunications device that receives and displays numeric messages and/or receives and announces voice messages. Sensors 8

  9. Mobile Objects A mobile object is some code that carries a state 9

  10. Mobile Objects (Cont.) A mobile object is some code that carries a state that lives on a host 10

  11. Mobile Objects (Cont.) A mobile object is some code that carries a state Lives in a host That visits places 11

  12. Mobile Objects (Cont.) A mobile object is some code that carries a state Lives in a host That visits places which is let in when trusted 12

  13. Mobile Objects (Cont.) A mobile object is some code that carries a state Lives in a host That visits places which is let in when trusted and barred when untrusted 13

  14. Mobile Objects (Cont.) A mobile object is some code that carries a state Lives in a host That visits places which is let in when trusted and barred when untrusted and will refuse to go to untrustworthy places 14

  15. Mobile Objects (Cont.) Mobile objects can talk to their friends 15

  16. Mobile Objects (Cont.) Mobile objects can talk to their friends but only by co- operation of the hosts 16

  17. Applications of Mobile Computing Emergency services 17

  18. Applications of Mobile Computing (Cont.) For Estate Agents In courts In companies Stock Information Collection/Control Credit Card Verification Taxi/Truck Dispatch Electronic Mail/Paging 18

  19. Challenges Disconnection Low bandwidth High bandwidth variability Low power and resources Security risks Wide variety terminals and devices with different capabilities Device attributes Fit more functionality into single, smaller device 19

  20. Future of Mobile Computing Use of Artificial Intelligence Integrated Circuitry -> Compact Size Increases in Computer Processor speeds 20

  21. Features of Android Android can run multiple apps at the Same Time Also support optimized graphics VGA, 2D graphics and 3D graphics Android has a better app market Android lets you change your settings faster It gives you more options to fit your budget Android keeps information visible on your home screen. Android also support Java applications.

  22. Conclusion Mobile computing has severe limitations - however, it is far from impossible, and technology improves all the time Lots of challenges - some have (good) solutions, many others are still waiting to be solved 22

  23. Thank You Questions and Comments? 23

  24. Android Development Training for Beginners FIRST DAY MODULE By: By: Joemarie Joemarie Comeros Comeros Amparo Amparo

  25. Outline: Overview on Android Installing ADT on Eclipse Explore Project Components Sample Android Project Running Android Project

  26. WHAT IS ANDROID? Android is an open mobile phone platform that was developed by Google and later by Open Handset Alliance. Google defines Android as a "software stack" for mobile phones. Software stack is made up of operating system(the platform on which everything runs), the middleware (the programming that allows applications to talk to a network and to one another) and the applications (the actual programs that phone will run)

  27. ANDROID SOFTWARE STACK ARCHITECTURE

  28. BRIEF HISTORY July 2005 - Google Inc. bought from Danger Inc. Open Handset Alliance was formed headed by Google which is composed of companies like Intel, T- Mobile, Spring Nextel and more. In 2008, Android became available as an open source and ASOP(Android Open Source Project) is responsible for maintaining and development of android. February 2009, the first android version was released, Android 1.1. for Mobile G1.

  29. ANDROID VERSIONS Android 1.1 Android 1.5 Cupcake Android 1.6 Donut Android 2.0/2.1 Eclair Android 2.2.x Froyo Android 2.3.x Gingerbread Android 3. x Honeycomb Android 4.0.x Ice Cream Sandwich Android 4.1 Jelly Bean

  30. ANDROID VERSION MARKET SHARE Note: When developing an application, consider the market share of the android version. The higher the market share, the higher number your target market is.

  31. WHAT WILL YOU NEED? Note: Based on my development experience, ADT can run on at least Dual Core with at least 2GB RAM.

  32. INSTALLATION ON ECLIPSE Please refer to: www.developershaven.net

  33. APPLICATION COMPONENTS Activity Present a visual user interface for one focused endeavor the user can undertake Example: a list of menu items users can choose from Services Run in the background for an indefinite period of time Example: calculate and provide the result to activities that need it Broadcast Receivers Receive and react to broadcast announcements Example: announcements that the time zone has changed Content Providers Store and retrieve data and make it accessible to all applications Example: Android ships with a number of content providers for common Intents Hold the content of a message Example: convey a request for an activity to present an image to the user or let the user edit some text

  34. ACTIVITY CYCLE

  35. INSIDE AN ACTIVITY public class CCSActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }

  36. SERVICES Run in the background Can continue even if Activity that started it dies Should be used if something needs to be done while the user is not interacting with application Otherwise, a thread is probably more applicable Should create a new thread in the service to do work in, since the service runs in the main thread Can be bound to an application In which case will terminate when all applications bound to it unbind Allows multiple applications to communicate with it via a common interface Needs to be declared in manifest file Like Activities, has a structured life cycle

  37. SERVICES CYCLE

  38. PROJECT COMPONENTS SRC The project source code GEN Auto generated code Example: R.java Included libraries Resources Drawables Layout Values like strings Manifest File A must have xml file. Contains essential information about the system to the android system

  39. PROJECT COMPONENT ON ECLIPSE

  40. R CLASS Auto-generated: YOUR SHOULD NT EDIT IT! Contains IDs of the project resources Enforces good software engineering Use findViewById and Resources object to get access to the resources Ex. Button b = (Button)findViewById(R.id.button1) Ex. getResources().getString(R.string.hello));

  41. R.JAVA CLASS

  42. DRAWABLES

  43. LAYOUTS Eclipse has a great UI creator Generates the XML for you Composed of View objects Can be specified for portrait and landscape mode Use same file name, so can make completely different UIs for the orientations without modifying any code

  44. LAYOUTS - CONTINUATION

  45. LAYOUTS - CONTINUATION

  46. LAYOUT SAMPLE <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/ap k/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" android:id="@+id/tv_hello"/> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Large Text android:textAppearance="?android:attr/textApp earanceLarge"/> res/values/string.xml </LinearLayout>

  47. MANIFEST FILE

  48. INTENTS 1. Lunching a new activity without expecting without expecting a result 2. Lunching a new activity and expecting a result when it finished. CalledActivity.class

  49. SAMPLE PROJECT On Eclipse IDE. Go To File > New > Project > Android Project See image at the side for the prompt that appear. Click next button.

  50. SAMPLE PROJECT Select android version. Tip: select the latest OS version available. You can add minimum and target SDK on your manifest file to support earlier android versions.

Related


More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#