iOS 10.2 之前,为了交互良好,在调用拨打电话之前会自己设置弹框;在IOS10.2之后系统做了改版,对App调用别的一些权限的时候系统会自己触发弹框,所以需要分版本处理。
- 注:解决系统有的系统弹2次框,有的系统不弹框。
判定当前的手机系统时候为IOS10.2
- (BOOL)isCurrentMobileSystem10_2 {
NSString *systemVersion = [[UIDevice currentDevice] systemVersion];
if ([systemVersion compare:@"10.2" options:NSNumericSearch] == NSOrderedDescending || [systemVersion compare:@"10.2" options:NSNumericSearch] == NSOrderedSame) {
return YES;
}
return NO;
}
点击电话操作
-(void)telephone {
if ([CommonTools isCurrentMobileSystem10_2]) {
//IOS10.2之后
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel://%@",COMPANYPHONENUM]]];
}
else {
//IOS10.2之前
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:COMPANYPHONENUM message:nil preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
}];
UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel://%@",COMPANYPHONENUM]]];
}];
[okAction setValue:COLORRPLUS forKey:@"_titleTextColor"];
[cancelAction setValue:COLORFONTBLACK forKey:@"_titleTextColor"];
[alertController addAction:cancelAction];
[alertController addAction:okAction];
[self presentViewController:alertController animated:YES completion:nil];
}
}