ユーザーはアプリが自分の場所を使用することができますかどうかを確認

StackOverflow https://stackoverflow.com/questions/1905189

質問

アプリは、彼らがが表示され、ユーザーの位置を取得しようとする最初の時間は、「あなたの現在の場所を使用したい」と、彼らは許可]または[OK]をしないでください打つことができます。ユーザーが[OK]をヒットしているか、許可していないかどうかを調べる方法はありますか?私はMKMapViewは、ユーザーの現在位置を表示していしようとしているが、私は、ユーザーの選択に基づいて異なるアクションを利用したいと思います。

通常は、この情報を取得するためのデリゲートがあると思うだろうが、があるようには思えません。

あなたの助けを事前に感謝します。

役に立ちましたか?

解決

ユーザーの位置を得るためにあなたの最初の呼び出しは、ユーザーがロケーションサービスを拒否しているかを示しますエラーで失敗します。あなたのCLLocationManagerDelegatedidFailWithErrorは以下のように、呼び出されます。 (定数はCLError.hに定義されている)

- (void)locationManager:(CLLocationManager*)aManager didFailWithError:(NSError*)anError
{
    switch([anError code])
    {
    case kCLErrorLocationUnknown: // location is currently unknown, but CL will keep trying
    break;

    case kCLErrorDenied: // CL access has been denied (eg, user declined location use)
    message = @"Sorry, flook has to know your location in order to work. You'll be able to see some cards but not find them nearby";
    break;

    case kCLErrorNetwork: // general, network-related error
    message = @"Flook can't find you - please check your network connection or that you are not in airplane mode";
    }
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top