Это также произошло с нашим приложением несколько дней назад, когда наше приложение было отклонено по тем же причинам, которые вы упомянули. Сообщение не может быть общим. Таким образом, вы можете показать свой собственный экран, где вы можете указать, по каким точным причинам вам нужны разрешения на местоположение, а затем показать это всплывающее окно.
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>MyApp uses your location to provide the list of products serviceable at your location and for better recommendation</string>
<key>NSLocationAlwaysUsageDescription</key>
<string>MyApp uses your location to provide the list of products serviceable at your location and for better recommendation</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>MyApp uses your location to provide the list of products serviceable at your location and for better recommendation</string>
Редактировать:
Где-то в вашем приложении вы можете использовать этот пользовательский обмен сообщениями с контроллером оповещений
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:title message:**your custom message** preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *allowAction = [UIAlertAction actionWithTitle:@"Settings" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
}];
UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
for (void(^ completion)(NSNumber * __nonnull status) in self.callbacks) {
completion(@(kCLAuthorizationStatusDenied));
}
}];
[alertController addAction:cancelAction];
[alertController addAction:allowAction];
[someViewController presentViewController:alertController animated:animated completion:nil];