@@ -154,7 +154,11 @@ + (void)onFocus:(BOOL)isActive {
154154 }
155155 } else {
156156 // Check if always granted
157- if ([[NSClassFromString (@" CLLocationManager" ) performSelector: @selector (authorizationStatus )] intValue ] == kCLAuthorizationStatusAuthorizedAlways ) {
157+ #pragma clang diagnostic push
158+ #pragma clang diagnostic ignored "-Wpointer-integer-compare"
159+ #pragma clang diagnostic push
160+ #pragma clang diagnostic ignored "-Wint-conversion"
161+ if ([NSClassFromString (@" CLLocationManager" ) performSelector: @selector (authorizationStatus )] == kCLAuthorizationStatusAuthorizedAlways ) {
158162 [OneSignalLocation beginTask ];
159163 [requestLocationTimer invalidate ];
160164 [self requestLocation ];
@@ -186,7 +190,7 @@ + (void)sendAndClearLocationListener:(PromptActionResult)result {
186190
187191+ (void )sendCurrentAuthStatusToListeners {
188192 id clLocationManagerClass = NSClassFromString (@" CLLocationManager" );
189- CLAuthorizationStatus permissionStatus = [[ clLocationManagerClass performSelector: @selector (authorizationStatus )] intValue ];
193+ CLAuthorizationStatus permissionStatus = [clLocationManagerClass performSelector: @selector (authorizationStatus )];
190194 if (permissionStatus == kCLAuthorizationStatusNotDetermined )
191195 return ;
192196
@@ -203,7 +207,7 @@ + (void)internalGetLocation:(bool)prompt fallbackToSettings:(BOOL)fallback {
203207 // If location permissions was not asked "started" will never be true
204208 if ([self started ]) {
205209 // We evaluate the following cases after permissions were asked (denied or given)
206- CLAuthorizationStatus permissionStatus = [[ clLocationManagerClass performSelector: @selector (authorizationStatus )] intValue ];
210+ CLAuthorizationStatus permissionStatus = [clLocationManagerClass performSelector: @selector (authorizationStatus )];
207211 BOOL showSettings = prompt && fallback && permissionStatus == kCLAuthorizationStatusDenied ;
208212 [OneSignal onesignalLog: ONE_S_LL_DEBUG message: [NSString stringWithFormat: @" internalGetLocation called showSettings: %@ " , showSettings ? @" YES" : @" NO" ]];
209213 // Fallback to settings alert view when the following condition are true:
@@ -224,7 +228,7 @@ + (void)internalGetLocation:(bool)prompt fallbackToSettings:(BOOL)fallback {
224228 return ;
225229 }
226230
227- CLAuthorizationStatus permissionStatus = [[ clLocationManagerClass performSelector: @selector (authorizationStatus )] intValue ];
231+ CLAuthorizationStatus permissionStatus = [clLocationManagerClass performSelector: @selector (authorizationStatus )];
228232 // return if permission not determined and should not prompt
229233 if (permissionStatus == kCLAuthorizationStatusNotDetermined && !prompt) {
230234 [OneSignal onesignalLog: ONE_S_LL_DEBUG message: @" internalGetLocation kCLAuthorizationStatusNotDetermined." ];
0 commit comments