私は新しいですが、次の質問があります。ユーザーが拒否した後、場所の許可を求めます。 Swift 3. IOS
アプリが起動すると、ユーザーは場所の許可を受け入れる必要があります。これは正常に動作します。彼が許可しない場合、いくつかの機能は動作しません。
ただし、ユーザーがこれらの機能を使用しようとすると、彼は場所の許可を受け入れていないという警告を受け取ります。これも私もしました。しかし、私は警報が彼が今それを受け入れることができるボタンを持っている(彼はそれを行うために彼の電話で設定に行く必要はありませんので)これを行うことはできませんでした。
このようなアラートのハンドラを作成しましたが、許可を受け入れることができません。 ここにハンドラがあります...
func someHandler(alert: UIAlertAction!) {
print("User now wants to let location from new")
self.locationManager.requestWhenInUseAuthorization()
if CLLocationManager.locationServicesEnabled() {
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
locationManager.startUpdatingLocation()
}
}
これは間違っていますか?現在、ハンドラが呼び出されると、位置情報サービスはオンになりません。
ありがとうございました
なぜ両方の認証をリクエストしていますか?必要なものだけを求めてください。 – rmaddy
なぜあなたは両方の場所のアクセス許可を要求していますか?すなわち_常に_ _ _ _ _ _ _ _ _ _そして_ _ _そのうちの1つだけをリクエストする必要があります。 _WhenInUse_:アプリケーションがフォアグラウンドになるたびに位置を取得し、常に_フォアグラウンドとバックグラウンドの両方に対応します。 – eshirima
それを修正し、私の質問を編集しました。 – RJB