to boldly go where no man has gone before: exploring geo in
DESCRIPTION
TRANSCRIPT
![Page 1: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/1.jpg)
To boldly go where no man
has gone before:
Exploring Geo in iPhone &
AndroidApr 1, 2010 Thu
2:50 PM San Jose
![Page 2: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/2.jpg)
To boldly go where no man has gone before:
Exploring Geo in iPhone & Android
Stardate: -312751.7313546423
![Page 3: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/3.jpg)
Stardate: -315974.3150684931
Jan 2007Three Years Ago
![Page 4: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/4.jpg)
Widescreen iPod with touch controls
Stardate: -315974.3150684931
![Page 5: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/5.jpg)
Revolutionary mobile phone
Stardate: -315974.3150684931
![Page 6: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/6.jpg)
Breakthrough internet communicator
Stardate: -315974.3150684931
![Page 7: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/7.jpg)
iPod Phone Internet
Stardate: -315974.3150684931
![Page 8: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/8.jpg)
iPhone
Stardate: -315974.3150684931
![Page 9: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/9.jpg)
Chief Science Officer
Stardate: -314000
![Page 10: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/10.jpg)
Data Communications
Portable Sensing
Data Analysis
Stardate: -314000
![Page 11: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/11.jpg)
Stardate: -314000
Tricorder
![Page 12: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/12.jpg)
iPhone
Stardate: -315974.3150684931
![Page 13: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/13.jpg)
Stardate: -314000
Tricorder
![Page 14: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/14.jpg)
Stardate: -314000
Tricorder iPhone
![Page 15: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/15.jpg)
Data
Scanner
Recorder
Locator
SearchSensor
Compass
VoiceText
Stardate: -314000
![Page 16: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/16.jpg)
Microphone(Audio)
Camera (Photo / Video)
External Accessory(Data)
Wireless Bluetooth (File)
Touch
GPS (Geo)
Magentometer(Compass)
Accelerometer(XZY)
(Device Orientation)
Data Plan / WiFi(Web / Email)
SMS(Data)
iPhone’s Anatomy
Phone(Audio)
![Page 17: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/17.jpg)
Microphone(Audio)
Camera (Photo / Video)
External Accessory(Data)
Wireless Bluetooth (File)
GPS (Geo)
Magentometer(Compass)
Accelerometer(XZY)
(Device Orientation)
Data Plan / WiFi(Web / Email)
SMS(Data)
Portable Sensors
Phone(Audio)
Touch
![Page 18: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/18.jpg)
Data Analysis
iPhone SDK
Xcode Interface Builder
![Page 19: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/19.jpg)
Microphone(Audio)
Camera (Photo / Video)
External Accessory(Data)
Wireless Bluetooth (File)
Touch
GPS (Geo)
Magentometer(Compass)
Accelerometer(XZY)
(Device Orientation)
Data Plan / WiFi(Web / Email)
SMS(Data)
Data Communications
Phone(Audio)
![Page 20: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/20.jpg)
Stardate: -315974.3150684931
![Page 21: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/21.jpg)
MapKit Core Location
iPhone SDK Frameworks
![Page 22: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/22.jpg)
iPhone SDK Frameworks
Cocoa Touch Layer
Media Layer
Core Services Layer
Core OS Layer
iPhone SDK Frameworks
![Page 23: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/23.jpg)
iPhone SDK Frameworks
Cocoa Touch Layer
Media Layer
Core Services Layer
Core OS Layer
Map Kit
Core Location
iPhone SDK Frameworks
![Page 24: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/24.jpg)
CLLocation Manager
CLLocation
CLHeading
Core Location Framework: Class
![Page 25: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/25.jpg)
Core Services Layer: Core Location
UIViewController InterfaceCLLocationManager
#import <CoreLocation/CoreLocation.h>@interface GetLocationViewController : UIViewController <CLLocationManagerDelegate> { CLLocationManager *locationManager; CLLocation *bestEffortAtLocation;}@property (nonatomic, retain) CLLocationManager *locationManager;@property (nonatomic, retain) CLLocation *bestEffortAtLocation;
![Page 26: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/26.jpg)
ViewController Method
// Create the manager object self.locationManager = [[[CLLocationManager alloc] init] autorelease];locationManager.delegate = self;locationManager.desiredAccuracy = [[setupInfo objectForKey:kSetupInfoKeyAccuracy] doubleValue];[locationManager startUpdatingLocation];
Core Services Layer: Core Location
CLLocationManager
![Page 27: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/27.jpg)
CLLocationDegrees
Core Services Layer: Core Location
CLLocationCoordinate2D
CCLocationAccuracy
Accuracy Constants
CLLocationSpeed
CLLocation Class Constants
CLLocationDirection
![Page 28: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/28.jpg)
locationManager.desiredAccuracyis the most important property of Location
Manager. It determines the amount of power it consumed.
kCLLocationAccuracyBestkCLLocationAccuracyNearestTenMeterskCLLocationAccuracyHundredMeterskCLLocationAccuracyKilometerkCLLocationAccuracyThreeKilometers
Best10 Meters
100 Meters1000 Meters3000 Meters
Accuracy ConstantsCLLocation Class
Constant values are to specify the accuracy of a location.
Core Services Layer: Core Location
![Page 29: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/29.jpg)
CLLocationDegrees
Core Services Layer: Core Location
CLLocationSpeed
CLLocation Class Constants
Delivers a latitude or longitude value specified in degrees. Data type is double.
Delivers the speed at which the device is moving in meters per second. Data type is double.
![Page 30: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/30.jpg)
CLLocationDirection
Core Services Layer: Core Location
CLLocation Class Constants
Delivers a direction that is measured in degrees and relative to true north. Data type is double.
North is 0 degreesEast is 90 degreesSouth is 180 degreesAny “-” value indicates an invalid direction
![Page 31: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/31.jpg)
CCLocationDirection
Clockwise
![Page 32: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/32.jpg)
altitude
Core Services Layer: Core Location
coordinate
course
horizontalAccuracy
speed
CLLocation Class Properties
timestamp
verticalAccuracy
![Page 33: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/33.jpg)
altitude
Core Services Layer: Core Location
coordinate
course
horizontalAccuracy
speed
Read-Only
timestamp
verticalAccuracy
![Page 34: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/34.jpg)
altitude (meters)
Core Services Layer: Core Location
coordinate
course (degrees)
horizontalAccuracy (meters)
speed (meters per sec)
Measurement Units
timestamp (NSDate)
verticalAccuracy (meters)
![Page 35: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/35.jpg)
CLLocation Manager
CLLocation
CLHeading
Core Location Framework: Class
![Page 36: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/36.jpg)
Create a CLLocationManager object to get heading by invoking [CLLocationManager
startUpdatingHeading].
iPhone 3GS contains a magnetometer – a magnetic field detector. It displays the raw
x, y, and z magnetometer values. Magnitude of the magnetic field is
computed in strength.
CLLocationManagerCore Location
Core Services Layer: Core Location
![Page 37: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/37.jpg)
headingAvailable
Core Services Layer: Core Location
headingFilter
startUpdatingHeading
stopUpdatingHeading
Heading Filter Value
CLLocationManager ClassProperties
Instance Methods
Constants
![Page 38: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/38.jpg)
CLLocationManagerCore Location
if (locationManager.headingAvailable == NO) {self.locationManager = nil; // No compass is available } else {
// heading service configuration locationManager.headingFilter = kCLHeadingFilterNone; // setup delegate callbacks locationManager.delegate = self; // start the compass [locationManager startUpdatingHeading]; }}
Core Services Layer: Core Location
![Page 39: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/39.jpg)
CLLocation Manager
CLLocation
CLHeading
Core Location Framework: Class
![Page 40: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/40.jpg)
CLHeadingCore Location
- (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)heading { // Update the labels with the raw x, y, and z values. [xLabel setText:[NSString stringWithFormat:@"%.1f", heading.x]]; [yLabel setText:[NSString stringWithFormat:@"%.1f", heading.y]]; [zLabel setText:[NSString stringWithFormat:@"%.1f", heading.z]];}
MapKit Framework: Class
![Page 41: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/41.jpg)
MapKit Core Location
iPhone SDK Frameworks
![Page 42: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/42.jpg)
MKAnnotationView
MKMapView
MKPinAnnotationView
MapKit Framework: Class
MKPlacemark
MKReverseGeocoder
MKUserLocation
![Page 43: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/43.jpg)
MKReverseGeocoder offers services to convert a map coordinate (latitude &
Longitude) to info such as country, city, or street. It works with a network-based map service to look up placemark information
for a specified coordinate value.
MKReverseGeocoder
Cocoa Touch Layer: MapKit Framework
![Page 44: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/44.jpg)
MKReverseGeocoder
Cocoa Touch Layer: MapKit Framework
Each app is limited to amount of
reverse geocoding
Send one reverse-geocoding
request for any one user action
Reuse the results from initial
request
Suggest not to send one reverse-
geocode request per minute
![Page 45: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/45.jpg)
MKAnnotationView
MKMapView
MKPinAnnotationView
MapKit Framework: Class
MKPlacemark
MKReverseGeocoder
MKUserLocation
![Page 46: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/46.jpg)
Cocoa Touch Layer: MapKit Framework
annotationsVisibleRect
mapType
centerCoordinate
delegate
region
selectedAnnotations
showsUserLocation
userLocation
userLocationVisible
zoomEnabled
annotations
MKMapView Class Properties
scrollEnabled
![Page 47: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/47.jpg)
MKMapType
MKMapView Class
It delivers the type of map to display.
MKMapTypeStandardMKMapTypeSatellite MKMapTypeHybrid
Cocoa Touch Layer: MapKit Framework
![Page 48: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/48.jpg)
MKAnnotationView
MKMapView
MKPinAnnotationView
MapKit Framework: Class
MKPlacemark
MKReverseGeocoder
MKUserLocation
![Page 49: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/49.jpg)
Cocoa Touch Layer: MapKit Framework
leftCalloutAccessoryViewcalloutOffset
enabled
canShowCallout
centerOffset
image
reuseIdentifier
rightCalloutAccessoryView
selected
annotation
MKAnnotationView Class Properties
![Page 50: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/50.jpg)
MKAnnotationView
MKMapView
MKPinAnnotationView
MapKit Framework: Class
MKPlacemark
MKReverseGeocoder
MKUserLocation
![Page 51: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/51.jpg)
MKAnnotationView Class Properties
Cocoa Touch Layer: MapKit Framework
animatesDrop
pinColor
MKPinAnnotationColor
Properties
Constants
MKPinAnnotationColorRed (Destination Points)MKPinAnnotationColorGreen (Starting Points)MKPinAnnotationColorPurple (User-specified Points)
![Page 52: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/52.jpg)
iPhone VS Android
![Page 53: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/53.jpg)
Android SDK
Google Maps External Library
Location Services
![Page 54: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/54.jpg)
package: android.location
Classes
GpsSatellite LocationProvider
Geocoder LocationManager
Criteria Location
Address GpsStatus
![Page 55: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/55.jpg)
getLongitude()
getSpeed()
getTime()
Location Class Methods
getProvider()
package: android.location
getAccuracy()
getAltitude()
getBearing()
getExtras()
getLatitude()
![Page 56: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/56.jpg)
Android SDK
Google Maps External Library
Location Services
![Page 57: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/57.jpg)
Android SDK
Use Google APIs add-on
Download Maps external library
Must register with Google Maps service
Obtain a Maps API Key
Google MapsExternal Library
![Page 58: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/58.jpg)
Android SDK
Declare Maps Library
Request internet permission
Hide title bar
AndroidManifest.xml
<uses-library android:name=”com.google.android.maps” /><uses-permission android:name=”android.permission.INTERNET” /><activity android:name=”.HelloMaps” android:label=”@string/app_name” android:theme=”@android:style/Theme.NoTitleBar”>
![Page 59: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/59.jpg)
Android SDK
res/layout/main.xml
<?xml version=”1.0” encoding=”utf-8”?><com.google.android.maps.MapView xmlns:android=”http://schmas.android.com/apk/res/android” android:id=@+id/mapview” android:layout_width=”fill_parent” android:layout_height=”fill_parent” android:clickable=”true” android:apiKey=”Map API Key”/>
![Page 60: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/60.jpg)
Android SDK
HelloMaps.java
public class HelloMaps extends MapActivity
@Override protected boolean isRouteDisplayed() {return false;}
@Override public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);}
+
MapView mapView = (MapView) findViewById(R.id.mapview);mapView.setBuiltInZoomControls(true);
![Page 61: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/61.jpg)
3rd Party SDK: HTML / CSS / JavaScript
PhoneGap Titanium Mobile
![Page 62: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/62.jpg)
function run() { var win = function(position) { // Grab coordinates object from the Position object passed into success callback. var coords = position.coords; // Call for static google maps data – make sure you use your own Google Maps API key! var url = "http://maps.google.com/maps/api/staticmap?center=" + coords.latitude + "," + coords.longitude + "&zoom=13&size=320x480&maptype=roadmap&key=MyGoogleMapsAPIKey&sensor=true"; document.getElementById('map').setAttribute('src',url); }; var fail = function(e) { alert('Can\'t retrieve position.\nError: ' + e); }; navigator.geolocation.getCurrentPosition(win, fail); }
3rd Party SDK: PhoneGap
![Page 63: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/63.jpg)
3rd Party SDK: HTML / CSS / JavaScript
PhoneGap Titanium Mobile
![Page 64: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/64.jpg)
3rd Party SDK: Titanium
geolocation.js
var longitude = e.coords.longitude; var latitude = e.coords.latitude; var altitude = e.coords.altitude; var heading = e.coords.heading; var accuracy = e.coords.accuracy; var speed = e.coords.speed; var timestamp = e.coords.timestamp; var altitudeAccuracy = e.coords.altitudeAccuracy;
Corresponding to iphone SDK: Core Location Framework: CLLocationManager & CLLocation
JavaScript Library
![Page 65: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/65.jpg)
JavaScript Library
3rd Party SDK: Titanium
geolocation.js
Corresponding to iphone SDK: Core Location Framework: CLHeading
var x = e.heading.x;var y = e.heading.y;var z = e.heading.z;var magneticHeading = e.heading.magneticHeading;var accuracy = e.heading.accuracy;var trueHeading = e.heading.trueHeading;var timestamp = e.heading.timestamp;
![Page 66: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/66.jpg)
JavaScript Library
3rd Party SDK: Titanium
map_view.js
var mapview = Titanium.Map.createView({ mapType: Titanium.Map.STANDARD_TYPE, region: {latitude:33.74511, longitude:-84.38993, latitudeDelta:0.01, longitudeDelta:0.01}, animate:true, regionFit:true, userLocation:true, annotations:[apple, atlanta]});
Corresponding to iphone SDK: MapKit Framework
![Page 67: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/67.jpg)
Chief Science Officer
Stardate: -314000
![Page 68: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/68.jpg)
Stardate: -312969.2922374429
01.12.2010Earthdate
![Page 69: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/69.jpg)
Stardate: -314000
Haiti 2010 Earthquake
![Page 70: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/70.jpg)
Stardate: -312927.6255707762
01.27.2010Earthdate
![Page 71: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/71.jpg)
Medical Tricorder
![Page 72: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/72.jpg)
STANFORD UNIVERSITYSchool of Engineering (EE46)
Save The WorldEngineering For Good
Have Fun Doing It
![Page 73: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/73.jpg)
STANFORD UNIVERSITYSchool of Engineering
Engineering For GoodSave The World and Have Fun Doing It
(EE 46)
![Page 74: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/74.jpg)
Save The World
Malaria
TB
HIV
![Page 75: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/75.jpg)
Scanner: 2D Objects
Camera (Photo / Video)
Bar Code
QR Code
Optical Character Recognition
(OCR)
Augmented Reality (AR)
![Page 76: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/76.jpg)
Scanner: Life forms
Detect Diseases
![Page 77: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/77.jpg)
Identify Patients
Scanner: Life forms
![Page 78: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/78.jpg)
Medical Tricorder
![Page 79: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/79.jpg)
Medical Tricorder
![Page 80: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/80.jpg)
Medical Tricorder
![Page 81: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/81.jpg)
The Future Begins
Malaria
TB
HIV
![Page 82: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/82.jpg)
The Future BeginsJan 12, 2010
Haiti Earthquake 7.0M
Feb 27, 2010Chile Earthquake 8.8M
Mar 4, 2010Taiwan Earthquake 6.4M
Feb 26, 2010Japan Earthquake 7.3M
Mar 15, 2010Japan Earthquake 6.6M
![Page 83: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/83.jpg)
Medical Tricorder
http://www.ghrf.org
Global Health Research Foundation
Stanford EE46
http://zwazosms.agilityhoster.com/iphone/
![Page 84: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/84.jpg)
Medical Tricorder
![Page 85: To boldly go where no man has gone before: Exploring Geo in](https://reader038.vdocuments.mx/reader038/viewer/2022102813/5481095eb4af9f0a2c8b4700/html5/thumbnails/85.jpg)
Q&Ahttp://www.slideshare.net/bess.ho