現在、ユーザーの現在の地理的位置を使用するアプリケーションがあります。
デバイスまたはシミュレーターでアプリケーションを実行すると、アプリが開き、ロケーションサービスが「承認済み」から「未決定」にすぐに変わります。何らかの理由で、これは私だけに起こっており、他の開発者には起こっていません。
これが昨夜6.01にアップデートしたXcodeの問題なのか、それともコードの問題なのかわかりません。
アプリケーションの位置情報サービスをリセットしようとしましたが、アプリケーションに戻るとすぐに「未定」に戻ります。
この問題の原因は何ですか?誰かが同様の問題に遭遇しましたか?
以下は、私のlocationManagerからのコードのスニペットです。
- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status{
NSLog(@"did change status");
if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusNotDetermined) {
NSLog(@"not determined");
} else if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized) {
NSLog(@"Authorized");
[[NSNotificationCenter defaultCenter] postNotificationName:@"Location Services Authorized" object:self];
} else if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusRestricted){
NSLog(@"restricted");
[[NSNotificationCenter defaultCenter] postNotificationName:@"Location Services Restricted" object:self];
} else if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusDenied) {
NSLog(@"denied");
[[NSNotificationCenter defaultCenter] postNotificationName:@"Location Services Denied" object:self];
} else {
NSLog(@"can not");
私は問題を解決しました!
AppleがCoreLocationManagerにいくつかの変更を加えたことが判明しました。
あなたはここでそれについてもっと読むことができます:
http://nevan.net/2014/09/core-location-manager-changes-in-ios-8/
助けてくれてありがとう。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加