我正在研究一个概念,我在appstore中不需要它。我一直在寻找方法。找到这个答案,说它已在iOS 4,5,6中完成。请查看以下链接。
Is there any private api for iphone that detect sms sent or received
示例代码使用C,C ++,并且在Objective-C方面没什么意义。有没有其他方法可以从应用程序中检测到呼叫/消息通知?任何数量的帮助表示赞赏。
答案 0 :(得分:2)
CoreTelephony是一个CoreFoundation框架,换句话说它是一个C / C ++ API。此外,它几乎没有记录的功能,基本上你最终可以发现一个电话(而不是SMS)被处理。几乎可以肯定通过API提供额外的私人信息,但它不会被广泛记录。可以找到已发布的Apple文档here。使用除了文档之外的任何功能不仅会阻止您将应用程序放在商店中,而且很可能会在(不太遥远)的未来中破坏应用程序。
答案 1 :(得分:1)
找到检测呼叫here的解决方案。当app在前台时,问题中的解决方案有效。注意:问题的答案对我不起作用。
在AppDelegate.h文件中
@property (weak, nonatomic) CTCallCenter* callCenter;
AppDelegate.m中的
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.callCenter = [[CTCallCenter alloc] init];
[self.callCenter setCallEventHandler:^(CTCall *call)
{
NSLog(@"Event handler called");
if ([call.callState isEqualToString: CTCallStateConnected])
{
NSLog(@"Connected");
}
else if ([call.callState isEqualToString: CTCallStateDialing])
{
NSLog(@"Dialing");
}
else if ([call.callState isEqualToString: CTCallStateDisconnected])
{
NSLog(@"Disconnected");
} else if ([call.callState isEqualToString: CTCallStateIncoming])
{
NSLog(@"Incomming");
}
}];
return YES;
}