iOS 10撥打系統(tǒng)電話彈出框延遲出現(xiàn)問題的解決
前言
最近在開發(fā)中遇到了一些問題,發(fā)現(xiàn)iOS 10撥打系統(tǒng)電話發(fā)現(xiàn)彈出框會(huì)延遲2s左右出現(xiàn),很不爽,研究了一下,發(fā)現(xiàn)是openURL在iOS 10及其之后會(huì)阻塞主線程
所以,撥打電話前,做個(gè)判斷,下面話不多說了,來一起看看詳細(xì)的介紹吧。
示例代碼:
// 撥打電話 + (void)callPhone:(NSString *)phoneNum { if ([ISNULL(phoneNum) length] == 0) { [SVProgressHUD showErrorWithStatus:@"撥打失敗,手機(jī)號(hào)碼不存在" duration:1.0 dismiss:nil]; return; } NSString *callPhone = [NSString stringWithFormat:@"telprompt://%@", phoneNum]; /// 解決iOS10及其以上系統(tǒng)彈出撥號(hào)框延遲的問題 /// 方案一 if ([[UIDevice currentDevice].systemVersion floatValue] >= 10.0) { /// 10及其以上系統(tǒng) [[UIApplication sharedApplication] openURL:[NSURL URLWithString:callPhone] options:@{} completionHandler:nil]; } else { /// 10以下系統(tǒng) [[UIApplication sharedApplication] openURL:[NSURL URLWithString:callPhone]]; } /// 方案二 // dispatch_async(dispatch_get_global_queue(0, 0), ^{ // [[UIApplication sharedApplication] openURL:[NSURL URLWithString:callPhone]]; // }); }
關(guān)于撥打電話的方法,導(dǎo)致彈出框延遲的原因,目前初步診斷就是openURL在iOS 10及其之后會(huì)阻塞主線程,方案二在iOS 11上不起作用
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
iOS開發(fā)存儲(chǔ)應(yīng)用程序Info.plist知識(shí)全面詳解
這篇文章主要為大家介紹了iOS開發(fā)存儲(chǔ)應(yīng)用程序Info.plist知識(shí)全面詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06iOS10實(shí)現(xiàn)推送功能時(shí)的注意點(diǎn)和問題總結(jié)
很多朋友都反饋,發(fā)現(xiàn)了iOS9升級(jí)到iOS10推送功能不正常的問題,所以這篇文章總結(jié)了一下要點(diǎn),親們可以根據(jù)以下步驟,逐步排查問題,也可以逐步實(shí)現(xiàn)iOS10的推送功能。下面來一起看看吧。2016-09-09淺述iOS11 Xcode 9 按住command 單擊 恢復(fù)到從前(直接跳轉(zhuǎn)到定義)
這篇文章主要介紹了 iOS11 Xcode 9 按住command 單擊 恢復(fù)到從前(直接跳轉(zhuǎn)到定義)的相關(guān)資料,需要的朋友可以參考下2017-10-10iOS實(shí)現(xiàn)UIScrollView的無限輪播功能(原理)詳解
在現(xiàn)在的一些App中常常見到圖片輪播器,一般用于展示廣告、新聞等數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于iOS實(shí)現(xiàn)UIScrollView的無限輪播功能(原理)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2018-09-09iOS App使用設(shè)計(jì)模式中的模板方法模式開發(fā)的示例
這篇文章主要介紹了iOS應(yīng)用使用設(shè)計(jì)模式中的模板方法模式開發(fā)的示例,例子代碼為Objective-C語言,文中還與Java的相關(guān)實(shí)現(xiàn)進(jìn)行類比,需要的朋友可以參考下2016-03-03