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デバイス上のアラートが殺到しました。
私はそれを検索しようとしましたが運はありません。どのポインタも高く評価されます。
info.plistに使用方法の説明を追加する必要があるかもしれません – Ro4ch
これを解明しましたか? – Ro4ch