私が直面している問題は、UIButtonを押すと、アクションを開始するためのロケーションサービスが必要になることです。しかし、ユーザーがアプリの最初の起動時に位置情報サービスを拒否した場合、アプリはクラッシュします。クラッシュすることなく拒否された後でロケーションサービスを許可するように求めるメッセージ
私はCLAuthorizationStatus.Deniedを実装する方法を見つけようとしましたが、そうする方法が見つからないようです。私が実装できるように見える唯一のコードは、アプリケーションの最初の起動時に要求を開始するdidChangeAuthorizationStatusです。
func locationManager(manager: CLLocationManager, didChangeAuthorizationStatus status: CLAuthorizationStatus)
{
if status == .AuthorizedAlways || status == .AuthorizedWhenInUse
{
manager.startUpdatingLocation()
}
else
{
manager.requestWhenInUseAuthorization()
}
}
私は、ロケーションサービスが拒否された場合、アプリケーションがクラッシュするAPIリクエストを送信するためにUIButtonを押した場合。
私の質問は、ボタンのIBAction内で、ユーザーが設定に行き、ロケーションサービスを有効にするように指示するメソッドを実装する方法です。 :)
何の問題あなたは正確に解決しようとしていますか? – nhgrif
ロケーションサービスを使用する権限が拒否され、ボタンが押された場合 - >現在のアラートでアプリケーションを使用する必要があることを示すアラートが表示され、ユーザーは設定を変更するための設定にリダイレクトされます。 – lifewithelliott
そして 'else = status .=Denied'を試したときに何が起こったのですか? – nhgrif