[英]How to get user incoming call phone number in iOS device
我使用 iOS SDK 4.0 中引入的 CoreTelephony 框架來了解來電及其掛斷狀態。
CTTelephonyNetworkInfo *tni = [[CTTelephonyNetworkInfo alloc] init];
callCenter = [[CTCallCenter alloc] init];
crtCarrierName = tni.subscriberCellularProvider.carrierName;
[callCenter setCallEventHandler:^(CTCall *call) {
if ([[call callState] isEqual:CTCallStateConnected]) {
//this call has just connected
} else if ([[call callState] isEqual:CTCallStateDisconnected]) {
//this call has just ended (dropped/hung up/etc)
}
}];
當我的應用程序處於后台時,我可以使用此事件處理程序來跟蹤呼叫狀態嗎? 我也可以從 CTCall 對象中獲取來電號碼嗎? 或者有其他方法。
我不想使用私有 API。Apple iOS SDK 有沒有可用的方法?
不,在官方 SDK 中無法做到這一點,您不能在后台使用它,因為它不屬於后台運行類別,除非您的應用程序在后台執行其他操作然后只監視呼叫。
您將永遠無法獲得當前通話的電話號碼,因為這是私人數據,Apple 不允許您訪問這些數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.