如何检测iPhone的来电和去电结束状态?

4
我有一个要求,即应用程序在安装后应该消失,当有来电或去电时,通话结束后应用程序应该弹出并显示屏幕。
如何在安装后隐藏应用程序?
如何检测来电和去电?
如何在来电和去电结束后显示屏幕?
最重要的是,我正在为个人制作此应用程序,而不是为应用商店。因此,请提供完整的建议和想法。
提前感谢您...

应用程序在后台时找到解决方案了吗? - name-it
我使用了这个解决方案:https://dev59.com/SYTba4cB1Zd3GeqP6nyn#29484246 - Ferran Maylinch
1个回答

2
使用以下通知来查找呼叫状态。添加CoreTelephony.framework。
#import <CoreTelephony/CTCall.h>

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callReceived:) name:CTCallStateIncoming object:nil];
   [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callEnded:) name:CTCallStateDisconnected object:nil];
   [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callConnected:) name:CTCallStateConnected object:nil];

谢谢回复。但我有一个问题,我将在后台和前台工作,我在哪里应用这段代码? - ios
-(void)applicationDidBecomeActive:(UIApplication *)application - 使用此委托进行前台活动。 -(void)applicationDidEnterBackground:(UIApplication *)application - 使用此委托进行后台活动。 - Raj Subbiah
2
@ios:您能否在后台运行应用程序并检索通知?我也有类似的要求,请更新一下。 - Ram
1
@Ram 你好Ram,你找到答案了吗?如果是的话,请分享一下。 - Mohit Tomar
1
@2003G35想知道:这个在ios9.2上有人用得了吗? - Tobi Nary
@SmokeDispenser 不,似乎在iOS 9.x中CTCallCenterCTCall功能根本无法工作。 - Beltalowda

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接