2016-08-23 7 views
0

私は、デリゲートメソッド "applicationDidBecomeActive"で現在のデバイスの場所を取得しようとしているアプリケーションを開発しましたが、同じコードをXcode 8 beta 6とiOS beta 10.7でテストしたところ、あなたがアプリを使用している間にあなたの位置にアクセスすることを「許可する」と言っている継続的なアラートによってスクリーンが砲撃された。私は「許可」/「許可しない」をクリックすることができません。私のコードは次のとおりです。私がテストしている継続 "アプリケーション"の使用中に "アプリケーション"があなたの場所にアクセスするのを許可する

-(void) startLocationService { 
CLAuthorizationStatus status = [CLLocationManager authorizationStatus]; 

if (![CLLocationManager locationServicesEnabled] || status == kCLAuthorizationStatusDenied || status == kCLAuthorizationStatusRestricted) { 
    DLog(@"Locations disabled or status not permiting use of locations systems."); 
    self.currentLocation = nil; 
    [self sendNotificationforErrorMessage:ERROR_MSG_LOCATION_SERVICE]; 
} 
else { 
    [self createLocationManager]; 

    if ([locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) { 
     if (status == kCLAuthorizationStatusNotDetermined) { 
      [locationManager requestWhenInUseAuthorization]; 
     } 
    } 
    else { 
     [self startLocationManager]; 
    } 
} 
} 

-(void)createLocationManager { 
self.currentLocation = nil; 
locationManager = [[CLLocationManager alloc] init]; 
locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters; 
locationManager.delegate = self; 
} 

-(void)startLocationManager { 
[locationManager startUpdatingLocation]; 
[self performSelector:@selector(locationServiceTimedout) 
      withObject:nil 
      afterDelay:timeOutValue]; 
} 

シナリオ: 1)Xcode8のbeta6でアプリケーションをコンパイルし、Xcode8のbeta6におけるアプリケーションのコンパイルのiOS 9デバイス 2)で正常に実行されたとiOS10デバイス上のアラートが殺到しました。

私はそれを検索しようとしましたが運はありません。どのポインタも高く評価されます。

+0

info.plistに使用方法の説明を追加する必要があるかもしれません – Ro4ch

+0

これを解明しましたか? – Ro4ch

答えて

0

キー

Privacy - Location Always Usage Description 

または

Privacy - Location Usage Description 

または

Privacy - Location When In Use Usage Description 
を追加 info.plist

にこの

移動してみてください

右側に説明を追加します。

関連する問題