title: MapKit in iOS 8 not run
body: <p>I am building an iOS application that display a POI in a MapView, but firstly I can display the map, and with iOS8 this is begin a problem.
  I read a lot question in this site, but none run on my app even if the code seems right.</p>
  
  <p>I entered into myapplicationTest-info.plist the following code</p>
  
  <pre><code>&lt;key&gt;NSLocationAlwaysUsageDescription&lt;/key&gt;
  </code></pre>
  
  <p>And the code in the file.m is this:</p>
  
  <pre><code>#import "MapViewController.h"
  
  #define IS_OS_8_OR_LATER ([[[UIDevice currentDevice] systemVersion] floatValue] &gt;= 8.0)
  
  @interface MapViewController ()
  
  @end
  
  @implementation MapViewController
  @synthesize mapView = _mapView ;
  
  
  - (void)viewDidLoad
  {
  
      [super viewDidLoad];
  
      self.mapView.delegate = self;
      self.locationManager.delegate = self;
      self.locationManager = [[CLLocationManager alloc] init];
  if (IS_OS_8_OR_LATER) {
      //[self.locationManager requestWhenInUseAuthorization];
      [self.locationManager requestAlwaysAuthorization];
  }
  
     [self.locationManager startUpdatingLocation];
  
     self.mapView.showsUserLocation = YES;
     [mapView setMapType:MKMapTypeStandard];
     [mapView setZoomEnabled:YES];
     [mapView setScrollEnabled:YES];
  }
  
  -(void)viewDidAppear:(BOOL)animated {
      [super viewDidAppear:YES];
  
      self.locationManager.distanceFilter = kCLDistanceFilterNone; //Whenever we move
      self.locationManager.desiredAccuracy = kCLLocationAccuracyBest;
      [self.locationManager startUpdatingLocation];
      NSLog(@"%@", [self deviceLocation]);
  
      //View Area
      MKCoordinateRegion region = { { 0.0, 0.0 }, { 0.0, 0.0 } };
      region.center.latitude = self.locationManager.location.coordinate.latitude;
      region.center.longitude = self.locationManager.location.coordinate.longitude;
      region.span.longitudeDelta = 0.005f;
      region.span.longitudeDelta = 0.005f;
      [mapView setRegion:region animated:YES];
  
  }
  
  - (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
  {
      MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(userLocation.coordinate, 800, 800);
      [self.mapView setRegion:[self.mapView regionThatFits:region] animated:YES];
  
  }
  - (NSString *)deviceLocation {
      return [NSString stringWithFormat:@"latitude: %f longitude: %f", self.locationManager.location.coordinate.latitude, self.locationManager.location.coordinate.longitude];
  }
  - (NSString *)deviceLat {
      return [NSString stringWithFormat:@"%f", self.locationManager.location.coordinate.latitude];
  }
  - (NSString *)deviceLon {
      return [NSString stringWithFormat:@"%f", self.locationManager.location.coordinate.longitude];
  }
  - (NSString *)deviceAlt {
      return [NSString stringWithFormat:@"%f", self.locationManager.location.altitude];
  }
  
  - (void)didReceiveMemoryWarning
  {
      [super didReceiveMemoryWarning];
      // Dispose of any resources that can be recreated.
  }
  
  
  @end
  </code></pre>
  
  <p>Where is the mistake?</p>
  
  <p>Why it doesn't run?</p>