U.S. patent application number 14/322743 was filed with the patent office on 2014-10-23 for integration of user applications in a mobile device.
The applicant listed for this patent is Apple Inc.. Invention is credited to Robert E. Borchers, Gregory N. Christie, Scott Forstall, Kevin Tiene.
Application Number | 20140315586 14/322743 |
Document ID | / |
Family ID | 40161226 |
Filed Date | 2014-10-23 |
United States Patent
Application |
20140315586 |
Kind Code |
A1 |
Forstall; Scott ; et
al. |
October 23, 2014 |
Integration of User Applications in a Mobile Device
Abstract
User-applications provided by mobile devices are integrated. In
one aspect, an email message is received at a mobile device from an
email address and a representation of the email message is
displayed on a graphical user interface. An input is received from
a user indicating a selection of the email address. Contact
information corresponding to a set of contacts is searched for a
contact having a contact email address matching the email address.
Contact information for the contact includes a geographic location
for the contact. A display of a map is provided to the user. The
display includes a graphical representation indicating the
geographic location for the contact having a contact email address
matching the email address.
Inventors: |
Forstall; Scott; (Mountain
View, CA) ; Christie; Gregory N.; (San Jose, CA)
; Borchers; Robert E.; (Pleasanton, CA) ; Tiene;
Kevin; (Cupertino, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Apple Inc. |
Cupertino |
CA |
US |
|
|
Family ID: |
40161226 |
Appl. No.: |
14/322743 |
Filed: |
July 2, 2014 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
12135073 |
Jun 6, 2008 |
8774825 |
|
|
14322743 |
|
|
|
|
60946915 |
Jun 28, 2007 |
|
|
|
Current U.S.
Class: |
455/457 |
Current CPC
Class: |
H04M 1/72552 20130101;
H04M 1/72522 20130101; G01C 21/3438 20130101; H04M 1/27467
20200101; G01C 21/362 20130101; G01C 21/3632 20130101; H04M 1/72572
20130101; H04M 2201/38 20130101; G01C 21/3629 20130101; H04M
3/42348 20130101; H04L 61/1564 20130101; G01C 21/3682 20130101;
H04W 4/02 20130101; G06Q 10/107 20130101; H04M 2242/30 20130101;
H04M 7/006 20130101; H04W 4/021 20130101; G01C 21/20 20130101; H04L
61/1594 20130101; H04M 2250/10 20130101; H04W 4/024 20180201; H04M
1/27453 20200101; G01C 21/3667 20130101 |
Class at
Publication: |
455/457 |
International
Class: |
H04W 4/02 20060101
H04W004/02 |
Claims
1-9. (canceled)
10. A method, comprising: activating a first user application on a
mobile device, such that a user can make a request to a directory
service for a telephone number; in response to the request,
receiving a short message including the telephone number;
determining a geographic location associated with the telephone
number; and providing a display on a graphical user interface of a
map including a graphical representation indicating the geographic
location.
11. The method of claim 10, wherein the first user application
comprises a telephony application and the user request comprises a
telephone call.
12. The method of claim 10, wherein the first user application
comprises a short messaging service application and the user
request comprises a short message.
13. The method of claim 10, wherein the short message includes the
geographic location and determining a geographic location comprises
obtaining the geographic location from the short message.
14. The method of claim 10, wherein determining a geographic
location associated with the telephone number comprises sending a
request to a service for providing a geographic location associated
with a telephone number and receiving the geographic location in
response to the request.
15. The method of claim 10, further comprising; determining a
current location of the mobile device; and providing route
information to the user corresponding to a route from the current
location to the geographic location associated with the telephone
number.
16. The method of claim 15, wherein the route information includes
a graphical display of the route superimposed on the map.
17. The method of claim 15, wherein the route information includes
textual directions for the route.
18. The method of claim 15, wherein the route information includes
audio directions for the route.
19. The method of claim 15, wherein providing route information
includes providing the geographic location of the contact and the
current location of the mobile device to a route service with a
request for a route therebetween and receiving the route
information in response to the request.
20. The method of claim 10, wherein providing a display of a map
includes providing the geographic location of the contact to a map
service with a request for a map including the geographic location
and receiving the map in response to the request.
21-22. (canceled)
23. A system comprising: a telephony application operable to
receive user input calling a telephone directory and requesting a
telephone number; a short messaging service application operable to
receive a short message including the telephone number in response
to the request for a telephone number; a communication system
configurable for sending the telephone number to a navigation
service, and for receiving from the navigation service a geographic
location associated with the telephone number; a map application
operable to provide a display of a map, the map including a
graphical representation of the geographic location associated with
the telephone number; and a display operable to display the
map.
24. The system of claim 23, further comprising: a positioning
system operable to obtain a current location of a mobile device;
and an engine operable to provide a graphical display on the map of
a route from the current location to the geographic location
associated with the telephone number.
25-30. (canceled)
31. A computer readable medium having instructions stored thereon,
which, when executed by a processor, cause the processor to perform
operations comprising: activating a first user application on a
mobile device, such that a user can make a request to a directory
service for a telephone number; in response to the request,
receiving a short message including the telephone number;
determining a geographic location associated with the telephone
number; and providing a display on a graphical user interface of a
map including a graphical representation indicating the geographic
location.
32. The computer readable medium of claim 31, wherein the first
user application comprises a telephony application and the user
request comprises a telephone call.
33. The computer readable medium of claim 31, wherein the first
user application comprises a short messaging service application
and the user request comprises a short message.
34. The computer readable medium of claim 31, further comprising
instructions, which, when executed by a processor, cause the
processor to perform operations comprising: determining a current
location of the mobile device; and providing route information to
the user corresponding to a route from the current location to the
geographic location associated with the telephone number.
35. A system comprising: a processor; a storage device coupled to
the processor and configurable for storing instructions, which,
when executed by the processor cause the processor to perform
operations comprising: activating a first user application on a
mobile device, such that a user can make a request to a directory
service for a telephone number; in response to the request,
receiving a short message including the telephone number;
determining a geographic location associated with the telephone
number; and providing a display on a graphical user interface of a
map including a graphical representation indicating the geographic
location.
36. (canceled)
37. A mobile device, comprising: a communication system
configurable for sending a communication from a user of the mobile
device, the communication including a request for a telephone
number, and for receiving a short message including the telephone
number; an input/output (I/O) system coupled to the communication
system and configurable for receiving input specifying the request;
a processor coupled to the I/O system and configurable for
determining a geographic location associated with the telephone
number, wherein the communication system sends the geographic
information to a navigation service, which service responds by
sending map information including coordinates for the geographic
location; and a map application, which when executed by the
processor, uses the map information to generate a map for display
by the mobile device, the map including a graphical representation
of the coordinates for the geographic location.
38. The mobile device of claim 37, wherein the communication
including a request for a telephone number comprises a telephone
call to a telephone directory service.
39. The mobile device of claim 37, wherein the communication
including a request for a telephone number comprises a short
message to a telephone directory service.
40-43. (canceled)
44. A method comprising: receiving a request from a mobile device
for map information, the request including a geographic location
wherein the geographic location was derived by the mobile device
from a short message including a telephone number received by the
mobile device from a telephone directory service; and providing the
map information to the mobile device, wherein the map information
can be used by the mobile device to display a map including a
graphical representation of the geographic location.
45. The method of claim 44, further comprising: receiving a request
for route information from the mobile device for a route from a
current location of the mobile device to the geographic location,
the request including the current location of the mobile device;
and providing the route information to the mobile device, wherein
the route information can be used by the mobile device to display a
map including a graphical representation of the route.
46. A system comprising: a processor; a storage device coupled to
the processor and configurable for storing instructions, which,
when executed by the processor, cause the processor to perform
operations comprising: receiving a request from a mobile device for
map information, the request including a geographic location
wherein the geographic location was derived by the mobile device
from a short message including a telephone number received by the
mobile device from a telephone directory service; and providing the
map information to the mobile device, wherein the map information
can be used by the mobile device to display a map including a
graphical representation of the geographic location.
47. The system of claim 46, wherein the instructions, when executed
by the processor, further cause the processor to perform operations
comprising: receiving a request for route information from the
mobile device for a route from a current location of the mobile
device to the geographic location, the request including the
current location of the mobile device; and providing the route
information to the mobile device, wherein the route information can
be used by the mobile device to display a map including a graphical
representation of the route.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to pending U.S. Provisional
Patent Application Ser. No. 60/946,915 filed Jun. 28, 2007, and
entitled "Integration of User Applications in a Mobile Device," the
contents of which are incorporated herein by reference.
TECHNICAL FIELD
[0002] This invention generally relates to mobile devices.
BACKGROUND
[0003] Conventional mobile devices are often dedicated to
performing a specific application. For example, a mobile phone
provides telephony services; a personal digital assistant (PDA)
provides a way to organize address, contacts and notes; a media
player plays content; email devices provide email communication,
etc. Modern mobile devices can include two or more of these
applications. Typically, the two or more applications operate
independent of one another, and the device functions as a
combination of two or more of the devices described above.
SUMMARY
[0004] This invention relates to mobile devices. In general, in one
aspect, the invention features a method including (optionally)
receiving at a mobile device an email message from an email address
and displaying a representation of the email message on a graphical
user interface. An input is received from a user indicating a
selection of the email address. Contact information corresponding
to a set of contacts is searched for a contact having a contact
email address matching the email address. Contact information for
the contact includes a geographic location for the contact. A
display of a map is provided to the user. The display includes a
graphical representation indicating the geographic location for the
contact having a contact email address matching the email
address.
[0005] Implementations of the invention can include one or more of
the following features. The mobile device can include a
multi-touch-sensitive display, and receiving input from a user
indicating a selection of the email address can be the user
touching the email address on the multi-touch-sensitive display. A
current location of the mobile device can be determined, and route
information can be provided to the user corresponding to a route
from the current location to the geographic location of the
contact. The route information can include a graphical display of
the route superimposed on the map; textual, directions for the
route; and/or audio directions for the route. Providing route
information can include providing the geographic location of the
contact and the current location of the mobile device to a route
service with a request for a route therebetween, and receiving the
route information in response to the request. Providing a display
of a map can include providing the geographic location of the
contact to a map service, with a request for a map including the
geographic location and receiving the map in response to the
request.
[0006] In general, in another aspect, the invention features a
method including activating a first user application on a mobile
device, such that a user can make a request to a directory service
for a telephone number. In response to the request, a short message
including the telephone number is received. A geographic location
is determined associated with the telephone number. A display is
provided on a graphical user interface of a map including a
graphical representation indicating the geographic location.
[0007] Implementations can include one or more of the following
features. In one example, the first user application is a telephony
application and the user request is a telephone call. In another
example, the first user application is a short messaging service
application and the user request is a short message. The short
message received in response to the request can include the
geographic location and determining a geographic location can
include obtaining the geographic location from the short message.
In another example, determining a geographic location associated
with the telephone number includes sending a request to a service
for providing a geographic location associated with a telephone
number, and receiving the geographic location in response to the
request.
[0008] A current location of the mobile device can be determined,
and route information can be provided to the user corresponding to
a route from the current location to the geographic location
associated with the telephone number. The route information can
include a graphical display of the route superimposed on the map;
textual directions for the route and/or audio directions for the
route. Providing route information can include providing the
geographic location of the contact and the current location of the
mobile device to a route service with a request for a route
therebetween, and receiving the route information in response to
the request. Providing a display of a map can include providing the
geographic location of the contact to a map service with a request
for a map including the geographic location, and receiving the map
in response to the request.
[0009] In general, in another aspect, the invention features a
system including an email application operable to receive an email
message from an email address and a data structure including
contact information for a set of contacts. The system further
includes a processor configurable for receiving user input
selecting the email address and, in response to the user input,
searching the data structure for a contact having a contact email
address matching the email address. The contact has an associated
geographic location. The system further includes a map application
and a display. The map application is operable to provide a display
of a map. The map includes a graphical representation of the
geographic location associated with the contact. The display is
operable to display the map.
[0010] Implementations of the invention can include the following
feature. The system can further include a positioning system
operable to obtain a current location of a mobile device, and an
engine operable to provide a graphical display on the map of a
route from the current location to the geographic location
associated with the contact.
[0011] In general, in another aspect, the invention features a
system including a telephony application operable to receive user
input calling a telephone directory and requesting a telephone
number, and a short messaging service application operable to
receive a short message including the telephone number in response
to the request for a telephone number. The system further includes
a communication system configurable for sending the telephone
number to a navigation service, and for receiving from the
navigation service a geographic location associated with the
telephone number. The system further includes a map application and
a display. The map application is operable to provide a display of
a map, the map including a graphical representation of the
geographic location associated with the telephone number. The
display is operable to display the map.
[0012] Implementations of the invention can include the following
additional feature. The system can further include a positioning
system operable to obtain a current location of a mobile device,
and an engine operable to provide a graphical display on the map of
a route from the current location to the geographic location
associated with the telephone number.
[0013] In general, in another aspect, the invention features a
computer-readable medium having instructions stored thereon, which,
when executed by a processor, cause the processor to perform
operations including receiving at a mobile device an email message
from an email address and displaying a representation of the email
message on a graphical user interface. The operations further
include receiving input from a user indicating a selection of the
email address and searching contact information corresponding to a
set of contacts for a contact having a contact email address
matching the email address. The contact information for the contact
includes a geographic location for the contact. The operations
further include providing a display of a map to the user. The
display includes a graphical representation indicating the
geographic location for the contact having a contact email address
matching the email address.
[0014] Implementations of the invention can include one or more of
the following features. The mobile device can include a
multi-touch-sensitive display and receiving input from a user
indicating a selection of the email address can include the user
touching the email address on the multi-touch-sensitive display.
The operations can further include determining a current location
of the mobile device, and providing route information to the user
corresponding to a route from the current location to the
geographic location of the contact.
[0015] In general, in another aspect, the invention features a
system including a processor and a storage device. The storage
device is coupled to the processor and configurable for storing
instructions, which, when executed by the processor, cause the
processor to perform operations including receiving at a mobile
device an email message from an email address and displaying a
representation of the email message on a graphical user interface.
The operations further include receiving input from a user
indicating a selection of the email address and searching contact
information corresponding to a set of contacts for a contact having
a contact email address matching the email address. The contact
information for the contact includes a geographic location for the
contact. The operations further include providing a display of a
map to the user. The display includes a graphical representation
indicating the geographic location for the contact having a contact
email address matching the email address.
[0016] In general, in another aspect, the invention features a
computer readable medium having instructions stored thereon, which,
when executed by a processor, cause the processor to perform
operations including activating a first user application on a
mobile device, such that a user can make a request to a directory
service for a telephone number. The operations further include, in
response to the request, receiving a short message including the
telephone number and determining a geographic location associated
with the telephone number. The operations further include providing
a display on a graphical user interface of a map including a
graphical representation indicating the geographic location.
[0017] Implementations of the invention can include one or more of
the following features. In one implementation, the first user
application is a telephony application and the user request is by
way of a telephone call. In another implementation, the first user
application is a short messaging service application and the user
request is by way of a short message. The operations can further
include determining a current location of the mobile device and
providing route information to the user corresponding to a route
from the current location to the geographic location associated
with the telephone number.
[0018] In general, in another aspect, the invention features a
system including a processor and a storage device coupled to the
processor and configurable for storing instructions, which, when
executed by the processor, cause the processor to perform
operations including activating a first user application on a
mobile device, such that a user can make a request to a directory
service for a telephone number. The operations further include, in
response to the request, receiving a short message including the
telephone number and determining a geographic location associated
with the telephone number. The operations further include providing
a display on a graphical user interface of a map including a
graphical representation indicating the geographic location.
[0019] In general, in another aspect, the invention features a
mobile device including a communication system, an input/output
(I/O) system, a processor and a map application. The communication
system is configurable for receiving a communication from an
individual or entity, the communication including information
associated with the individual or entity. The I/O system is coupled
to the communication system and configurable for displaying a
representation of the information on the mobile device, and for
receiving input specifying at least a portion of the information.
The processor is coupled to the I/O system and configurable for
retrieving from a data structure of the mobile device a geographic
location associated with the individual or entity. The
communication system sends the geographic information to a
navigation service, which service responds by sending map
information including coordinates for the geographic location. The
map application, which when executed by the processor, uses the map
information to generate a map for display by the mobile device. The
map includes a graphical representation of the coordinates for the
geographic location.
[0020] In general, in another aspect, the invention features a
mobile device including a communication system configurable for
sending a communication from a user of the mobile device, the
communication including a request for a telephone number, and for
receiving a short message including the telephone number. The
mobile device further includes an input/output (I/O) system coupled
to the communication system and configurable for receiving input
specifying the request. The mobile device further includes a
processor coupled to the I/O system and configurable for
determining a geographic location associated with the telephone
number, wherein the communication system sends the geographic
information to a navigation service, which service responds by
sending map information including coordinates for the geographic
location. A map application is included, which when executed by the
processor, uses the map information to generate a map for display
by the mobile device. The map includes a graphical representation
of the coordinates for the geographic location.
[0021] Implementations of the invention can include one or more of
the following features. The communication including a request for a
telephone number can be a telephone call to a telephone directory
service. In another example, the communication including a request
for a telephone number can be a short message to a telephone
directory service.
[0022] In general, in another aspect, the invention features, a
method including receiving a request from a mobile device for map
information and providing the map information to the mobile device.
The request includes a geographic location that was derived by the
mobile device from an associated email address and associated
contact information included in an address book residing on the
mobile device. The map information can be used by the mobile device
to display a map including a graphical representation of the
geographic location.
[0023] Implementations of the invention can include the following
feature. The method can further include receiving a request for
route information from the mobile device and providing the route
information to the mobile device. The route is from a current
location of the mobile device to the geographic location and the
request includes the current location of the mobile device. The
route information can be used by the mobile device to display a map
including a graphical representation of the route.
[0024] In general, in another aspect, the invention features a
system including a processor and a storage device coupled to the
processor and configurable for storing instructions, which, when
executed by the processor, cause the processor to perform
operations including receiving a request from a mobile device for
map information and providing the map information to the mobile
device. The request includes a geographic location that was derived
by the mobile device from an associated email address and
associated contact information included in an address book residing
on the mobile device. The map information can be used by the mobile
device to display a map including a graphical representation of the
geographic location.
[0025] Implementations of the invention can include the following
feature. The instructions, when executed by the processor, further
cause the processor to perform operations including receiving a
request for route information from the mobile device for a route
from a current location of the mobile device to the geographic
location. The request includes the current location of the mobile
device. The operations further include providing the route
information to the mobile device, wherein the route information can
be used by the mobile device to display a map including a graphical
representation of the route.
[0026] In general, in another aspect, the invention features a
method include receiving a request from a mobile device for map
information and providing the map information to the mobile device.
The request includes a geographic location that was derived by the
mobile device from a short message including a telephone number
received by the mobile device from a telephone directory service.
The map information can be used by the mobile device to display a
map including a graphical representation of the geographic
location.
[0027] Implementations of the invention can include the following
additional feature. A request for route information can be received
from the mobile device for a route from a current location of the
mobile device to the geographic location, the request including the
current location of the mobile device. The route information can be
provided to the mobile device, wherein the route information can be
used by the mobile device to display a map including a graphical
representation of the route.
[0028] In general, in another aspect, the invention features, a
system including a processor and a storage device coupled to the
processor and configurable for storing instructions, which, when
executed by the processor, cause the processor to perform
operations including receiving a request from a mobile device for
map information and providing the map information to the mobile
device. The request includes a geographic location that was derived
by the mobile device from a short message including a telephone
number received by the mobile device from a telephone directory
service. The map information can be used by the mobile device to
display a map including a graphical representation of the
geographic location.
[0029] Implementations of the invention can include the following
feature. The instructions, when executed by the processor, can
further cause the processor to perform operations including
receiving a request for route information from the mobile device
and providing the route information to the mobile device. The route
is from a current location of the mobile device to the geographic
location. The request includes the current location of the mobile
device. The route information can be used by the mobile device to
display a map including a graphical representation of the
route.
[0030] Implementations of the invention can realize one or more of
the following advantages. Various different applications provided
by a mobile device can be integrated to provide an enhanced user
experience. A user can seamlessly use or obtain information
provided by multiple applications by interaction with integrated
features. The user can efficiently be provided with meaningful
information, for example, map and routing information, with reduced
effort from the user's perspective.
[0031] The details of one or more embodiments of the invention are
set forth in the accompanying drawings and the description below.
Other features, objects, and advantages of the invention will be
apparent from the description and drawings, and from the
claims.
DESCRIPTION OF DRAWINGS
[0032] FIG. 1 is a block diagram of a mobile device.
[0033] FIG. 2 is a block diagram of an example network operating
environment for the mobile device of FIG. 1.
[0034] FIG. 3 is a block diagram of an example implementation of
the mobile device of FIG. 1.
[0035] FIG. 4 is an example graphical user interface displaying an
email message.
[0036] FIG. 5 is an example graphical user interface displaying
contact information.
[0037] FIG. 6 is an example graphical user interface displaying an
email message.
[0038] FIG. 7 is a flowchart showing an example process for
providing an integrated email/addressbook/map feature.
[0039] FIG. 8 is an example graphical user interface displaying a
map.
[0040] FIG. 9 is a block diagram representing an example
engine.
[0041] FIG. 10 is an example graphical user interface displaying a
map and a route superimposed thereon.
[0042] FIG. 11 is a flowchart showing an example process for
providing an integrated telephony/short messaging service/map
feature.
[0043] FIG. 12 is an example graphical user interface displaying a
map and a route and contact information superimposed thereon.
[0044] Like reference symbols in the various drawings indicate like
elements.
DETAILED DESCRIPTION
[0045] FIG. 1 is a block diagram of an example mobile device 100.
The mobile device 100 can be, for example, a handheld computer, a
personal digital assistant, a cellular telephone, a network
appliance, a camera, a smart phone, an enhanced general packet
radio service (EGPRS) mobile phone, a network base station, a media
player, a navigation device, an email device, a game console, or
other electronic device or a combination of any two or more of
these data processing devices or other data processing devices.
Mobile Device Overview
[0046] In some implementations, the mobile device 100 includes a
touch-sensitive display 102. The touch-sensitive display 102 can
implement liquid crystal display (LCD) technology, light emitting
polymer display (LPD) technology, or some other display technology.
The touch-sensitive display 102 can be sensitive to haptic and/or
tactile contact with a user.
[0047] In some implementations, the touch-sensitive display 102 can
comprise a multi-touch-sensitive display 102. A
multi-touch-sensitive display 102 can, for example, process
multiple simultaneous touch points, including processing data
related to the pressure, degree and/or position of each touch
point. Such processing facilitates gestures and interactions with
multiple fingers, chording, and other interactions. Other
touch-sensitive display technologies can also be used, e.g., a
display in which a point of contact is made using a stylus or other
pointing device. An example of multi-touch sensitive display
technology is described in U.S. Pat. Nos. 6,323,846; 6,570,557;
6,677,932; and U.S. Patent Publication No. 2002/0015024A1, each of
which are incorporated by reference herein in its entirety.
[0048] In some implementations, the mobile device 100 can display
one or more graphical user interfaces on the touch-sensitive
display 102 for providing the user access to various system objects
and for conveying information to the user to facilitate an
intuitive user experience. In some implementations, the graphical
user interface can include one or more display objects 104, 106. In
the example shown, the display objects 104, 106, are graphic
representations of system objects. Some examples of system objects
include device functions, applications, windows, files, alerts,
events, or other identifiable system objects.
Example Mobile Device Functionality
[0049] In some implementations, the mobile device 100 can implement
multiple device functionalities, such as a telephony device, as
indicated by a phone object 110; an e-mail device, as indicated by
the e-mail object 112; a network data communication device, as
indicated by the Web object 114; and a media processing device, as
indicated by the media player object 116. In some implementations,
particular display objects 104, e.g., the phone object 110, the
e-mail object 112, the Web object 114, and the media player object
116, can be displayed in a menu bar 118. In some implementations,
each of the device functionalities can be accessed from a top-level
graphical user interface, such as the graphical user interface
illustrated in FIG. 1. Touching one of the objects 110, 112, 114 or
116 can, for example, invoke the corresponding functionality.
[0050] In some implementations, the mobile device 100 can implement
network distribution functionality. For example, the functionality
can enable the user to take the mobile device 100 and its
associated network while traveling. In particular, the mobile
device 100 can extend Internet access (e.g., via Wi-Fi) to other
wireless devices in the vicinity. For example, mobile device 100
can be configured as a base station for one or more devices. As
such, mobile device 100 can grant or deny network access to other
wireless devices.
[0051] In some implementations, upon invocation of particular
device functionality, the graphical user interface of the mobile
device 100 changes, or is augmented or replaced with another user
interface or user interface elements, to facilitate user access to
particular functions associated with the corresponding device
functionality. For example, in response to a user touching the
phone object 110, the graphical user interface of the
touch-sensitive display 102 may present display objects related to
various phone functions; likewise, touching of the email object 112
may cause the graphical user interface to present display objects
related to various e-mail functions; touching the Web object 114
may cause the graphical user interface to present display objects
related to various Web-surfing functions; and touching the media
player object 116 may cause the graphical user interface to present
display objects related to various media processing functions.
[0052] In some implementations, the top-level graphical user
interface environment or state of FIG. 1 can be restored by
pressing a button 120 located near the bottom of the mobile device
100. In some implementations, each corresponding device
functionality may have corresponding "home" display objects
displayed on the touch-sensitive display 102, and the graphical
user interface environment of FIG. 1 can be restored by touching
the "home" display object.
[0053] In some implementations, the top-level graphical user
interface can include additional display objects 106, such as a
short messaging service (SMS) object 130, a calendar object 132, a
photos object 134, a camera object 136, a calculator object 138, a
stocks object 140, a weather object 142, a maps object 144, a notes
object 146, a clock object 148, an address book object 150, and a
settings object 152. Touching the SMS display object 130 can, for
example, invoke an SMS messaging environment and supporting
functionality; likewise, each selection of a display object 132,
134, 136, 138, 140, 142, 144, 146, 148, 150 and 152 can invoke a
corresponding object environment and functionality.
[0054] Additional and/or different display objects can also be
displayed in the graphical user interface of FIG. 1. In some
implementations, the display objects 106 can be configured by a
user, e.g., a user may specify which display objects 106 are
displayed, and/or may download additional applications or other
software that provides other functionalities and corresponding
display objects.
[0055] In some implementations, the mobile device 100 can include
one or more input/output (I/O) devices and/or sensor devices. For
example, a speaker 160 and a microphone 162 can be included to
facilitate voice-enabled functionalities, such as phone and voice
mail functions. In some implementations, a loud speaker 164 can be
included to facilitate hands-free voice functionalities, such as
speaker phone functions. An audio jack 166 can also be included for
use of headphones and/or a microphone.
[0056] In some implementations, a proximity sensor 168 can be
included to facilitate the detection of the user positioning the
mobile device 100 proximate to the user's ear and, in response, to
disengage the touch-sensitive display 102 to prevent accidental
function invocations. In some implementations, the touch-sensitive
display 102 can be turned off to conserve additional power when the
mobile device 100 is proximate to the user's ear.
[0057] Other sensors can also be used. For example, in some
implementations, an ambient light sensor 170 can be utilized to
facilitate adjusting the brightness of the touch-sensitive display
102. In some implementations, an accelerometer 172 can be utilized
to detect movement of the mobile device 100, as indicated by the
directional arrow 174. Accordingly, display objects and/or media
can be presented according to a detected orientation, e.g.,
portrait or landscape. In some implementations, the mobile device
100 may include circuitry and sensors for supporting a location
determining capability, such as that provided by the global
positioning system (GPS). In some implementations, a positioning
system (e.g., a GPS receiver) can be integrated into the mobile
device 100 through an interface (e.g., port device 190) to provide
access to location-based services.
[0058] The mobile device 100 can also include a camera lens and
sensor 180. In some implementations, the camera lens and sensor 180
can be located on the back surface of the mobile device 100. The
camera can capture still images and/or video.
[0059] The mobile device 100 can also include one or more wireless
communication subsystems, such as an 802.11b/g communication device
186, and/or a Bluetooth.TM. communication device 188. Other
communication protocols can also be supported, including other
802.x communication protocols (e.g., WiMax, Wi-Fi, 3G), code
division multiple access (CDMA), global system for mobile
communications (GSM), Enhanced Data GSM Environment (EDGE),
etc.
[0060] In some implementations, a port device 190, e.g., a
Universal Serial Bus (USB) port, or a docking port, or some other
wired port connection, can be included. The port device 190 can,
for example, be utilized to establish a wired connection to other
computing devices, such as other communication devices 100, a
personal computer, a printer, or other processing devices capable
of receiving and/or transmitting data.
[0061] In some implementations, a port device 190, e.g., a USB
port, or a docking port, or some other wired port connection, can
be included. The port device 190 can, for example, be utilized to
establish a wired connection to other computing devices, such as
other communication devices 100, network access devices, a personal
computer, a printer, or other processing devices capable of
receiving and/or transmitting data. In some implementations, the
port device 190 allows the mobile device 100 to synchronize with a
host device using one or more protocols, such as, for example, the
TCP/IP over USB protocol described in co-pending U.S. Provisional
Patent Application No. 60/945,904, filed Jun. 22, 2007, for
"Multiplex Data Stream Protocol", Attorney Docket No. 004860.P5490,
which patent application is incorporated by reference herein in its
entirety.
Network Operating Environment
[0062] FIG. 2 is a block diagram of an example network operating
environment 200 for the mobile device 100 of FIG. 1. The mobile
device 100 of FIG. 1 can, for example, communicate over one or more
wired and/or wireless networks 210 in data communication. For
example, a wireless network 212, e.g., a cellular network, can
communicate with a wide area network (WAN) 214, such as the
Internet, by use of a gateway 216. Likewise, an access point 218,
such as an 802.11 g wireless access point, can provide
communication access to the wide area network 214. In some
implementations, both voice and data communications can be
established over the wireless network 212 and the access point 218.
For example, the mobile device 100a can place and receive phone
calls (e.g., using VoIP protocols), send and receive e-mail
messages (e.g., using POP3 protocol), and retrieve electronic
documents and/or streams, such as web pages, photographs, and
videos, over the wireless network 212, gateway 216, and wide area
network 214 (e.g., using TCP/IP or UDP protocols). Likewise, the
mobile device 100b can place and receive phone calls, send and
receive e-mail messages, and retrieve electronic documents over the
access point 218 and the wide area network 214. In some
implementations, the mobile device 100 can be physically connected
to the access point 218 using one or more cables and the access
point 218 can be a personal computer. In this configuration, the
mobile device 100 can be referred to as a "tethered" device.
[0063] The mobile devices 100a and 100b can also establish
communications by other means. For example, the wireless device
100a can communicate with other wireless devices, e.g., other
wireless devices 100, cell phones, etc., over the wireless network
212. Likewise, the mobile devices 100a and 100b can establish
peer-to-peer communications 220, e.g., a personal area network, by
use of one or more communication subsystems, such as the
Bluetooth.TM. communication device 188 shown in FIG. 1. Other
communication protocols and topologies can also be implemented.
[0064] The mobile device 100 can, for example, communicate with one
or more services 230, 240, 250 and 260 and/or one or more content
publishers 270 over the one or more wired and/or wireless networks
210. For example, a navigation service 230 can provide navigation
information, e.g., map information, location information, route
information, and other information, to the mobile device 100. In
the example shown, a user of the mobile device 100b has invoked a
map functionality, e.g., by pressing the maps object 144 on the
top-level graphical user interface shown in FIG. 1, and has
requested and received a map for the location "1 Infinite Loop,
Cupertino, Calif."
[0065] A messaging service 240 can, for example, provide e-mail
and/or other messaging services. A media service 250 can, for
example, provide access to media files, such as song files, movie
files, video clips, and other media data. One or more other
services 260 can also be utilized by the mobile device 100 (e.g.,
syncing services, software update services, activation
services).
[0066] The mobile device 100 can also access other data and content
over the one or more wired and/or wireless networks 210. For
example, content publishers 270, such as news sites, RSS feeds, web
sites, blogs, social networking sites, developer networks, etc. can
be accessed by the mobile device 100. Such access can be provided
by invocation of web browsing function or application (e.g., a
browser) in response to a user touching the Web object 114.
Example Mobile Device Architecture
[0067] FIG. 3 is a block diagram 300 of an example implementation
of the mobile device 100 of FIG. 1. The mobile device 100 can
include a memory interface 302 one or more data processors, image
processors and/or central processing units 304, and a peripherals
interface 306. The memory interface 302, the one or more processors
304 and/or the peripherals interface 306 can be separate components
or can be integrated in one or more integrated circuits. The
various components in the mobile device 100 can be coupled by one
or more communication buses or signal lines.
[0068] Sensors, devices and subsystems can be coupled to the
peripherals interface 306 to facilitate multiple functionalities.
For example, a motion sensor 310, a light sensor 312, and a
proximity sensor 314 can be coupled to the peripherals interface
306 to facilitate the orientation, lighting and proximity functions
described with respect to FIG. 1. Other sensors 316 can also be
connected to the peripherals interface 306, such as a positioning
system (e.g., a GPS receiver), a temperature sensor, a biometric
sensor, or other sensing device, to facilitate related
functionalities.
[0069] A camera subsystem 320 and an optical sensor 322, e.g., a
charged coupled device (CCD) or a complementary metal-oxide
semiconductor (CMOS) optical sensor, can be utilized to facilitate
camera functions, such as recording photographs and video
clips.
[0070] Communication functions can be facilitated through one or
more wireless communication subsystems 324, which can include radio
frequency receivers and transmitters and/or optical (e.g.,
infrared) receivers and transmitters. The specific design and
implementation of the communication subsystem 324 can depend on the
communication network(s) over which the mobile device 100 is
intended to operate. For example, a mobile device 100 may include
communication subsystems 324 designed to operate over a GSM
network, a GPRS network, an EDGE network, a Wi-Fi or WiMax network,
and a Bluetooth.TM. network.
[0071] An audio subsystem 326 can be coupled to a speaker 328 and a
microphone 330 to facilitate voice-enabled functions, such as voice
recognition, voice replication, digital recording, and telephony
functions.
[0072] The I/O subsystem 340 can include a touch screen controller
342 and/or other input controller(s) 344. The touch-screen
controller 342 can be coupled to a touch screen 346. The touch
screen 346 and touch screen controller 342 can, for example, detect
contact and movement or break thereof using any of a plurality of
touch sensitivity technologies, including but not limited to
capacitive, resistive, infrared, and surface acoustic wave
technologies, as well as other proximity sensor arrays or other
elements for determining one or more points of contact with the
touch screen 346.
[0073] The other input controller(s) 344 can be coupled to other
input/control devices 348, such as one or more buttons, rocker
switches, thumb-wheel, infrared port, USB port, and/or a pointer
device such as a stylus. The one or more buttons (not shown) can
include an up/down button for volume control of the speaker 328
and/or the microphone 330.
[0074] In one implementation, a pressing of the button for a first
duration may disengage a lock of the touch screen 346; and a
pressing of the button for a second duration that is longer than
the first duration may turn power to the mobile device 100 on or
off. The user may be able to customize a functionality of one or
more of the buttons. The touch screen 346 can, for example, also be
used to implement virtual or soft buttons and/or a keyboard.
[0075] In some implementations, the mobile device 100 can present
recorded audio and/or video files, such as MP3, AAC, and MPEG
files. In some implementations, the mobile device 100 can include
the functionality of an MP3 player, such as an iPod.TM.. The mobile
device 100 may, therefore, include a 36-pin connector that is
compatible with the iPod. Other input/output and control devices
can also be used.
[0076] The memory interface 302 can be coupled to memory 350. The
memory 350 can include high-speed random access memory and/or
non-volatile memory, such as one or more magnetic disk storage
devices, one or more optical storage devices, and/or flash memory
(e.g., NAND, NOR). The memory 350 can store an operating system
352, such as Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or an
embedded operating system such as VxWorks. The operating system 352
may include instructions for handling basic system services and for
performing hardware dependent tasks. In some implementations, the
operating system 352 can be a kernel (e.g., UNIX kernel).
[0077] The memory 350 may also store communication instructions 354
to facilitate communicating with one or more additional devices,
one or more computers and/or one or more servers. The memory 350
may include graphical user interface instructions 356 to facilitate
graphic user interface processing; sensor processing instructions
358 to facilitate sensor-related processing and functions; phone
instructions 360 to facilitate phone-related processes and
functions; electronic messaging instructions 362 to facilitate
electronic-messaging related processes and functions; web browsing
instructions 364 to facilitate web browsing-related processes and
functions; media processing instructions 366 to facilitate media
processing-related processes and functions; GPS/Navigation
instructions 368 to facilitate GPS and navigation-related processes
and instructions; camera instructions 370 to facilitate
camera-related processes and functions; and/or other software
instructions 372 or data to facilitate other related processes and
functions (e.g., security instructions, activation record).
[0078] Each of the above identified instructions and applications
can correspond to a set of instructions for performing one or more
functions described above. These instructions need not be
implemented as separate software programs, procedures or modules.
The memory 350 can include additional instructions or fewer
instructions. Furthermore, various functions of the mobile device
100 may be implemented in hardware and/or in software, including in
one or more signal processing and/or application specific
integrated circuits.
Integrated User Applications
[0079] A mobile device, e.g. mobile device 100 shown in FIG. 1, can
provide multiple user applications, as discussed above. Two or more
of the user applications can be integrated, to enhance the user's
experience and provide improved functionality. Some examples of
integrated user application features are described in further
detail below.
Integrated Address Book/Email Feature
[0080] In one implementation, the mobile device 100 provides an
address book application. The user of the mobile device can select
the address book display object 150 to invoke the address book
application. The address book includes information corresponding to
a set of the user's contacts. For example, the contact information
can include a person or entity's name, address, phone number, email
address, and/or other information related to the person or entity.
The address book can reside on the mobile device 100, or be stored
externally but accessible by the mobile device 100. An integrated
address book feature can be provided, wherein the address book
application is integrated with one or more other applications
provided by the mobile device.
[0081] In one implementation, the mobile device 100 also includes
an email application. The email application can be accessed by a
user interaction with a user interface. For example, referring
again to FIG. 1, a user can select the email display object 112 to
activate the email application. The email application and the
address book application can be integrated, as described further
below.
[0082] Referring to FIG. 4, an example graphical user interface is
shown displaying an example email message 400. The email message
400 was received at the mobile device 100 and is displayed using
the email application. The email message 400 includes a "to" field
402 indicating the email address to whom the email message 400 was
sent, i.e., an email account of the user of the mobile device 100.
The email message further includes a "from" field 404 indicating
the email address of the sender of the email message 400.
Optionally, an email message can include a "cc" field 406
indicating email addresses of others copied on the email message.
The email message 400 includes a "subject" field 407, where the
sender of the email message can optionally provide an indication of
the subject matter of the email message. The email message 400
includes a text field 408, including the substance of the email
message.
[0083] In this implementation, the user can interact with the email
message 400 to select an email address in either the "from" or "cc"
fields 404, 406. By way of example, if the mobile device 100
includes a touch-sensitive display, such as the touch-sensitive
display 106 in FIG. 1, the user can select the email address by
touching the email address on the display 106.
[0084] Upon selecting an email address, the address book is
automatically searched to determine whether a contact is included
in the address book with an email address matching the selected
email address. In this example, the email message was sent from
Rick.Edward@mac.com. The address book is searched for a contact
having the same email address in the email address field of the
contact information for the contact. Referring now to FIG. 5, an
example page 500 from the address book is shown including contact
information 502 for a contact identified as "Rick Edwards". The
email address 504 for Rick Edwards matches the email address in the
"from" field 404 of the email message 400 shown in FIG. 4.
[0085] In one implementation, in response to the user selecting the
email address in the "from" field 404 of the email message 400, if
a matching contact is found, the display of the email message is
replaced by a display of the page 500 from the address book
including the corresponding contact information. In another
implementation, both the email message 400 and the page 500 from
the address book are displayed simultaneously using a split screen
approach. In yet another implementation, at least some of the
contact information is displayed superimposed on the email message,
for example, within an information balloon 600 as shown in FIG. 6.
Other techniques for conveying the contact information to the user
are possible, and different configurations of graphical user
interfaces can be used. The ones described herein are examples for
illustrative purposes.
[0086] In one implementation, the user can use a first mode of
selecting the email address to receive a first result and a second
mode of selecting the email address to receive a second result. For
example, in the case of a mobile device 100 with a touch-sensitive
display 106, a first mode of selecting the email address can be the
user briefly touching the email address. The first result displayed
in response to the selection can be a display of the information
balloon 600 superimposed on the email message 400, as shown in FIG.
6. A second mode of selecting the email address can be the user
touching the email address for a sustained period of time (e.g., a
few seconds). The second result displayed in response to the
selection can be a display of the page 500 from the address book
including the entire set of contact information for the contact
corresponding to the email address, as shown in FIG. 5.
[0087] In another implementation, where a user can interact with
the email message 400 using a mouse or other such pointer device to
control a position of a cursor, a first mode of selecting the email
address can be to hover the cursor over the email address being
selected. A second mode of selecting the email address can be to
click on the email address. Other manners of interacting with the
email message 400 to select the email address are possible, and the
ones described are examples.
Integrated Address Book/Email/Map Feature
[0088] In one implementation, upon a user selecting an email
address in the email message 400, if a matching contact is located
in the address book and the contact information for the contact
includes an address for a geographic location, then a map is
displayed to the user showing the geographic location. Referring to
FIG. 7, a process 700 is shown for displaying a geographic location
on a map to a user in response to selecting an email address within
an email message. In step 702, an email message is received from an
email address by an email application operating within a mobile
device. By way of example, the email message 400 is received from
the email address for Rick Edwards, 404. A user input is received
selecting the email address (Step 704). Again, by way of example,
the user can select the "from" field to select Rick Edwards' email
address. It should be understood that steps 702 and 704 are
optional and the process can commence at step 706.
[0089] A geographic location associated with the email address is
retrieved from an address book application operated by the mobile
device (Step 706). Referring to the above example, the geographic
location associated with the email address for Rick Edwards as
shown on a page 500 from the address book is 123 11 Ave SE,
Anywhere, USA. An "address" field in the contact information 502
for the contact corresponding to the email address can be searched
to retrieve the address. A map is provided on a user interface for
display to the user, where the map shows the geographic location
(Step 708). For example, referring to FIG. 8, the map 800 can be
displayed with a graphical representation, i.e., the star 802, at
the geographic location corresponding to 123 11 Ave SE, Anywhere,
USA.
[0090] In one implementation, a map application is provided by the
mobile device 100, either internally or by way of interfacing with
an external map service. By way of example, the map service can be
Google Maps API provided by Google, Inc. of Mountain View, Calif.,
although other map services can be used. A request for a map that
is approximately centered about the geographic location can be sent
to the map application and the map received from the map
application. The map is displayed on a user interface, for example,
the touch-sensitive user interface 106 shown on the mobile device
100 in FIG. 1.
Integrated Address Book/Email/Map/Route Feature
[0091] In one implementation, the mobile device 100 is location
aware (i.e., can determine its current location). Referring again
to FIG. 3, in this implementation, the mobile device 100 includes a
positioning system 318. In various implementations, the positioning
system 318 can be provided by a separate device coupled to the
mobile device 100, or can be provided internal to the mobile
device. In some implementations, the positioning system 318 can
employ positioning technology including a GPS, a cellular grid,
television signals, Wi-Fi base stations, URIs or any other
technology for determining the geographic location of a device. In
other implementations, the positioning system 318 can be provided
by an accelerometer and a compass using dead reckoning techniques.
In such implementations, the user can occasionally reset the
positioning system by marking the mobile device's presence at a
known location (e.g., a landmark or intersection). In other
implementations, the positioning system 318 can be provided by
using wireless signal strength and one or more locations of known
wireless signal sources to provide the current location. Wireless
signal sources can include access points and/or cellular towers. In
still other implementations, the user can enter a set of position
coordinates (e.g., latitude, longitude) for the mobile device. For
example, the position coordinates can be typed into the phone
(e.g., using a virtual keyboard) or selected by touching a point on
a map. Position coordinates can also be acquired from another
device (e.g., a car navigation system) by syncing or linking with
the other device. Other techniques to determine a current location
of the mobile device 100 can be used and other configurations of
the positioning system 318 are possible.
[0092] Referring again to FIG. 7, in an optional step 710, the
mobile device can determine its current location. The current
location can be provided to an engine (e.g., embodied in routing
instructions 374 included within the memory 350, see FIG. 3). The
engine can be used to provide navigation guidance to a user of the
mobile device 100. In such implementations, the engine can provide
route information to the user from a current location of the mobile
device 100 to the geographic location corresponding to a selected
email address.
[0093] Referring again to FIG. 5, in an implementation where the
mobile device is location aware, a proximity to an address included
in the contact information. One example of a display of proximity
information is shown at 506. The distance can represent a radial
proximity, proximity by a closest-travel-route, or another
measurement of proximity.
[0094] FIG. 9 is a block diagram illustrating an example operation
of the engine 900 (e.g., embodied in routing instructions 374). In
some implementations, the engine 900 includes a routing engine 902
and a presentation engine 904. In one implementation, the routing
engine 902 can derive a route between two locations, i.e., the
current location and a contact location (i.e., a geographic
location corresponding to a contact in the address book), using
existing routing technology. By way of illustration, Google Maps
API is one example of existing routing technology, available from
Google, Inc. (Mt. View, Calif.). The current location is determined
using the positioning system 318, as described above. The contact
location is determined from the contact information included in the
address book corresponding to the selected email address.
[0095] The routing engine 902 provides a route from the current
location to the contact location to the presentation engine 904.
The presentation engine 904 can communicate with the map
application used to implement the integrated address book feature.
The presentation engine 904 can use a map provided by the map
application 906 to overlay the route information. Referring to FIG.
10, the map 800 of FIG. 8 is shown with a route 1004 superimposed
thereon. A graphical display object 1002 indicates the current
location of the mobile device 100 and the graphical display object
802 indicates the contact location. In one implementation, as
described above, the user can select a route display object 804
superimposed on the map 800 (or otherwise displayed to the user) to
activate the route application.
[0096] In one implementation, the route information can include
either in addition to the route displayed on the map, or instead of
the route displayed on the map, an audio file including audio
directions from the current location of the mobile device 100 to
the contact location. The audio file can be delivered, for example,
to a voicemail application provided by the mobile device. In one
implementation, the audio file includes chapter marks such that the
user can play back the voicemail while traveling the route to the
contact location, and pause at the chapter marks while progressing
along the route from one instruction to the next. In another
implementation, the audio file is included in a podcast delivered
to the mobile device 100 over the Internet. The audio file included
in the podcast may also include chapter marks to facilitate
playback of the route information while progressing along the
route. In an implementation where the audio file is provided in
conjunction with the route displayed on a map, the mobile device's
current location as the mobile device progresses along the route
can be tracked on the map in sync with the directions being
provided by audio to the user.
[0097] Integrated Telephony/Short Messaging Service/Map/Route
Application
[0098] In another implementation, a telephony application, short
messaging service application, map application and optionally, a
route application, can be integrated into an integrated user
feature. Referring to FIG. 11, an example process 1100 wherein a
user employs the integrated user feature is shown. In a first step
1102, the mobile device receives user input selecting and using the
telephony application to call a telephone directory service. For
example, the user can telephone a "411" or similar type of
information number. The user can select to have the telephone
number and/or address information provided by the telephone
directory service delivered to the mobile device by way of a short
message. By way of illustrative example, certain mobile service
providers enable text messaging delivery of telephone directory
information to their mobile telephone customers. The short message
is received by a short messaging service application provided by
the mobile device, wherein the short message includes a telephone
number and optionally a corresponding address (Step 1104).
[0099] If the short message includes an address, then the address
can be sent to the map application with a request for a map showing
the address. If the short message only includes a telephone number,
a corresponding address can be determined based on the telephone
number (Optional Step 1106), for example, using a reverse look-up
service. By way of illustration, a reverse lookup service is
provided by www.reversetelephonedirectory.com, wherein a telephone
number can be provided to obtain a corresponding address. This
service, or a similar service, can be employed to receive the
telephone number provided by the mobile device and to send as a
response the corresponding address.
[0100] In either case, the address is provided to the map
application (Step 1108). The map application provides a map showing
the address (Step 1110). For example, the map can be the map 800
sown in FIG. 8, where the star 802 represents the address.
[0101] In one implementation, the current location of the mobile
device can be determined (Optional Step 1112). The current location
and the address can be provided to the route application (Step
1114). The route application can provide route information
including displaying the route superimposed on the map (Optional
Step 1116). For example, the route 1004 can be superimposed on the
map 800, as shown in FIG. 12. As described above, the route
information can include an audio file delivered by a podcast, or to
a voicemail application.
[0102] Accordingly, by a user calling a telephone directory
service, the user can receive in response a map generated by the
map application including a visual representation of a location
corresponding to the telephone number requested from the telephone
directory service and optionally a route from the current location
of the mobile device (and therefore the user) to the location. An
information balloon, or other such visual representation, can be
provided in conjunction with the map (e.g., superimposed thereon)
providing the telephone number, for example, information balloon
1202 shown in FIG. 12. The telephony application can be employed by
the user to automatically call the telephone number. For example,
the user can select the telephone number 1204 displayed within the
information balloon 1202 to initiate a call to the number.
[0103] In another implementation, a user of the mobile device can
send a short message (i.e., text message) to a telephone directory
service and receive a short message in response including the
requested information, e.g., a telephone number and/or address. For
example, AT&T Wireless provides a service called TXT-411,
wherein mobile customers of AT&T Wireless can use short
messaging to communication with a telephone directory service, both
to request and receive information. In this implementation, once
the short message is received including the telephone number and
address, steps 1104 onwards in process 1100 can be performed to
provide the user a map and optionally route information. That is,
step 1102 can be eliminated in this implementation and replaced by
a step wherein user input is received providing a short message to
send to a directory service, the short message including a request
for a telephone number and/or address.
[0104] An engine, as the term is used throughout this application,
can be a piece of hardware that encapsulates a function, can be
firmware or can be a software application. An engine can perform
one or more functions, and one piece of hardware, firmware or
software can perform the functions of more than one of the engines
described herein. Similarly, more than one piece of hardware,
firmware and/or software can be used to perform the function of a
single engine described herein.
[0105] The foregoing descriptions of specific embodiments of the
present invention are presented for purposes of illustration and
description. They are not intended to be exhaustive or to limit the
invention to the precise forms disclosed. Rather, it should be
appreciated that various modifications may be made without
departing from the spirit and scope of the invention. Accordingly,
other embodiments are within the scope of the following claims.
* * * * *
References