I found this documentation that instructs you how to use CLServiceSession to defer any accidental/premature locacation permission prompts:
https://developer.apple.com/documentation/corelocation/suspending-authorization-requests
It says "Add the CLRequireExplicitServiceSession property to your app’s Info.plist file to opt into this control behavior."
I pretty much followed this example to a T. It seemed to work, however in some cases I still manage to get a location permission prompt on a fresh install before the part of the onboarding where we'd ask the user for location permissions (with CLServiceSession now).
Is there any additional information on using CLRequireExplicitServiceSession than this blurb? Googling brings up nothing. I presumed the property is a BOOL but I'm not even sure of that, as it doesn't show up in Info.plist's autocomplete suggestions and I have to manually set the type.