requestAlwaysAuthorization Regression iOS 13.1

Hello,


As indicated on the Apple documentation, we must call the requestAlwaysAuthorization method

before you can receive location information. You may call

requestAlwaysAuthorization
when the current authorization state is either:
  • Not Determined (
    kCLAuthorizationStatusNotDetermined
    ), or
  • When in Use (
    kCLAuthorizationStatusAuthorizedWhenInUse
    ).





calling this method will start the process of requesting "always" * authorization from the user. Any authorization change as a result of * the prompt will be reflected via the usual delegate callback: * -locationManager:didChangeAuthorizationStatus.

An application which currently has "when-in-use" authorization and has * never before requested "always" authorization may use this method to * request "always" authorization one time only. Otherwise, if * +authorizationStatus != kCLAuthorizationStatusNotDetermined, (ie * generally after the first call) this method will do nothing. * * If your app is not currently in use, this method will do nothing.


So, in general : Your app can no longer ask for Always authorization after the user responds to the location permission prompt. Calling this method again will have no effect.

The problem with iOS 13.1, calling this method and user chose already Allow Once, continue reflecting via the usual delegate callback : locationManager:didChangeAuthorizationStatus


Problem not reproduced with Beta 13.0.

Problem persist only when user select new permission option: Allow once

Did you have this problem like me?

I would like Apple to review this problem.