I want to get information about blocked and dropped calls. When you call someone through your phone, sometimes your call get blocked or dropped, then you hear a message, "Please try again". I want to access that information in my app. Is it possible in iPhone? Maybe for jailbroken devices?
2 Answers
Call information is not available to apps on stock OS iOS devices, due to security sandboxing.

- 70,107
- 14
- 90
- 153
The decision to play a "please try again" recording is (generally) made by a device called a Service Control Point in the telephone network. From the phone's perspective, a "please try again" recording looks the same as a successfully completed call: The network doesn't tell your phone that it routed the call to secondary treatment, so there's no data stored on the phone that you could collect or analyze.
When your iPhone displays a "Call Failed" message and a "Try Again" button, the point of failure is closer to you – usually it means your phone lost contact with the cellular base station – and the phone does log that the call didn't go through. Apparently it's possible to access the iPhone's call history database without using private APIs, so in theory you could use this in your app (if Apple approves).

- 7,397
- 1
- 26
- 39
-
thanks a lot for explaining in detail.can we access more info related to call like rxQuality or RxQual – Testing Testing Jan 19 '12 at 05:57
-
[That question has been asked before](http://stackoverflow.com/questions/4954389/programatically-measuring-carriers-signal-strength-in-iphone-device) – the short answer is "not with the public APIs", but the private API calls can be found in the Core Telephony framework. – Scott Forbes Jan 19 '12 at 07:38