0
Google Map SDK for iOS
Michael Pan
13年8月12⽇日星期⼀一
Official Web Page
http://bit.ly/12j2w8r
13年8月12⽇日星期⼀一
We want to build
13年8月12⽇日星期⼀一
Get Google Map API Key
• 從 Google APIs Console 產⽣生 API 專案.
13年8月12⽇日星期⼀一
Google API Console - My Project
13年8月12⽇日星期⼀一
Services
≈
13年8月12⽇日星期⼀一
Create new iOS Key
13年8月12⽇日星期⼀一
Configure Project
• Input bundle ID
13年8月12⽇日星期⼀一
API Console Updated
13年8月12⽇日星期⼀一
Download SDK
• https://dl.google.com/geosdk/GoogleMaps-iOS-1.4.0.zip
• Version 1.4.0 (July 2013)
•
13年8月12⽇日星期⼀一
Drag Framework into Project 1.4
13年8月12⽇日星期⼀一
Drag Framework into Project 1.4
13年8月12⽇日星期⼀一
Drag GoogleMaps.bundle 1.4
13年8月12⽇日星期⼀一
Drag GoogleMaps.bundle 1.4
13年8月12⽇日星期⼀一
Google Maps SDK Framework
13年8月12⽇日星期⼀一
Configure Xcode Project - Library
原本就有, 其他請⼿手動加⼊入
1.1
13年8月12⽇日星期⼀一
Configure Xcode Project - Library
原本就有, 其他請⼿手動加⼊入
1.4
13年8月12⽇日星期⼀一
Setting
13年8月12⽇日星期⼀一
Create SingleView Application
UIView
13年8月12⽇日星期⼀一
Some code with Key
• AppDelegate.m
#import "AppDelegate.h"
#import <GoogleMaps/GoogleMaps.h>
@implementation AppDelegate
-...
Change Class
@interface ViewController ()
@property (weak, nonatomic)
IBOutlet GMSMapView *gmapView;
@end
13年8月12⽇日星期⼀一
Run it
13年8月12⽇日星期⼀一
User Location -View Controller
- (void)viewDidLoad
{
[super viewDidLoad];
self.gMapView.myLocationEnabled = YES;
self.gMap...
Run
13年8月12⽇日星期⼀一
Zoom Action
- (IBAction)moveToLocation:(id)sender {
CLLocationCoordinate2D userLocation = self.gMapView.myLocation.coordin...
Add mark
- (IBAction)addMark:(id)sender {
CLLocationCoordinate2D userLocation =
self.gMapView.myLocation.coordinate;
GMSMa...
Add markers
13年8月12⽇日星期⼀一
StreetView
• GMSPanoramaView
• GMSPanoramaViewDelegate
13年8月12⽇日星期⼀一
StreetViewController.m
-(void) loadView{
[super loadView];
self.view = [GMSPanoramaView panoramaWithFrame:CGRectZero
nearC...
Tap info window of Marker
-(void) mapView:(GMSMapView *)mapView didTapInfoWindowOfMarker:(GMSMarker
*)marker{
NSLog(@"%@",...
Run
13年8月12⽇日星期⼀一
Traffic Info
- (IBAction)showTraffic:(UISwitch *)sender {
self.gMapView.trafficEnabled = sender.on;
}
13年8月12⽇日星期⼀一
Upcoming SlideShare
Loading in...5
×

Google maps SDK for iOS 1.4

830

Published on

Published in: Technology, Education
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
830
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
18
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Google maps SDK for iOS 1.4"

  1. 1. Google Map SDK for iOS Michael Pan 13年8月12⽇日星期⼀一
  2. 2. Official Web Page http://bit.ly/12j2w8r 13年8月12⽇日星期⼀一
  3. 3. We want to build 13年8月12⽇日星期⼀一
  4. 4. Get Google Map API Key • 從 Google APIs Console 產⽣生 API 專案. 13年8月12⽇日星期⼀一
  5. 5. Google API Console - My Project 13年8月12⽇日星期⼀一
  6. 6. Services ≈ 13年8月12⽇日星期⼀一
  7. 7. Create new iOS Key 13年8月12⽇日星期⼀一
  8. 8. Configure Project • Input bundle ID 13年8月12⽇日星期⼀一
  9. 9. API Console Updated 13年8月12⽇日星期⼀一
  10. 10. Download SDK • https://dl.google.com/geosdk/GoogleMaps-iOS-1.4.0.zip • Version 1.4.0 (July 2013) • 13年8月12⽇日星期⼀一
  11. 11. Drag Framework into Project 1.4 13年8月12⽇日星期⼀一
  12. 12. Drag Framework into Project 1.4 13年8月12⽇日星期⼀一
  13. 13. Drag GoogleMaps.bundle 1.4 13年8月12⽇日星期⼀一
  14. 14. Drag GoogleMaps.bundle 1.4 13年8月12⽇日星期⼀一
  15. 15. Google Maps SDK Framework 13年8月12⽇日星期⼀一
  16. 16. Configure Xcode Project - Library 原本就有, 其他請⼿手動加⼊入 1.1 13年8月12⽇日星期⼀一
  17. 17. Configure Xcode Project - Library 原本就有, 其他請⼿手動加⼊入 1.4 13年8月12⽇日星期⼀一
  18. 18. Setting 13年8月12⽇日星期⼀一
  19. 19. Create SingleView Application UIView 13年8月12⽇日星期⼀一
  20. 20. Some code with Key • AppDelegate.m #import "AppDelegate.h" #import <GoogleMaps/GoogleMaps.h> @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [GMSServices provideAPIKey:@"key-Nk64"]; return YES; } 13年8月12⽇日星期⼀一
  21. 21. Change Class @interface ViewController () @property (weak, nonatomic) IBOutlet GMSMapView *gmapView; @end 13年8月12⽇日星期⼀一
  22. 22. Run it 13年8月12⽇日星期⼀一
  23. 23. User Location -View Controller - (void)viewDidLoad { [super viewDidLoad]; self.gMapView.myLocationEnabled = YES; self.gMapView.settings.myLocationButton = YES; } 13年8月12⽇日星期⼀一
  24. 24. Run 13年8月12⽇日星期⼀一
  25. 25. Zoom Action - (IBAction)moveToLocation:(id)sender { CLLocationCoordinate2D userLocation = self.gMapView.myLocation.coordinate; self.gMapView.camera =[GMSCameraPosition cameraWithLatitude:userLocation.latitude longitude:userLocation.longitude zoom: 20]; } 1.4 13年8月12⽇日星期⼀一
  26. 26. Add mark - (IBAction)addMark:(id)sender { CLLocationCoordinate2D userLocation = self.gMapView.myLocation.coordinate; GMSMarker *school = [[GMSMarker alloc] init]; school.position = CLLocationCoordinate2DMake(userLocation.latitude +0.001, userLocation.longitude+0.001); school.snippet = @"School"; school.map = self.gMapView; GMSMarker *hostpital = [[GMSMarker alloc] init]; hostpital.position = CLLocationCoordinate2DMake(userLocation.latitude-0.001, userLocation.longitude-0.001); hostpital.snippet = @"Hospital"; hostpital.map = self.gMapView; } 13年8月12⽇日星期⼀一
  27. 27. Add markers 13年8月12⽇日星期⼀一
  28. 28. StreetView • GMSPanoramaView • GMSPanoramaViewDelegate 13年8月12⽇日星期⼀一
  29. 29. StreetViewController.m -(void) loadView{ [super loadView]; self.view = [GMSPanoramaView panoramaWithFrame:CGRectZero nearCoordinate:self.nearCoordinate]; [(GMSPanoramaView *)self.view setDelegate:self]; } - (void)panoramaView:(GMSPanoramaView *)panoramaView didMoveCamera:(GMSPanoramaCamera *)camera { NSLog(@"Camera: (%f,%f,%f)", camera.orientation.heading, camera.orientation.pitch, camera.zoom); } 13年8月12⽇日星期⼀一
  30. 30. Tap info window of Marker -(void) mapView:(GMSMapView *)mapView didTapInfoWindowOfMarker:(GMSMarker *)marker{ NSLog(@"%@", marker.snippet); StreetViewController * streetViewController = [StreetViewController new]; streetViewController.nearCoordinate = CLLocationCoordinate2DMake(40.761388, -73.978133); [self presentViewController:streetViewController animated:YES completion:^{ ; }]; } self.gMapView.delegate = self; 13年8月12⽇日星期⼀一
  31. 31. Run 13年8月12⽇日星期⼀一
  32. 32. Traffic Info - (IBAction)showTraffic:(UISwitch *)sender { self.gMapView.trafficEnabled = sender.on; } 13年8月12⽇日星期⼀一
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×