我正在尝试制作一个应用程序,一旦用户完成他/她的电话,它就会出现(每次和每次)。
用例:
“我的应用程序”当前未运行。
- 用户从手机拨打电话。
- 通话完成后,“我的应用程序”应启动/运行。
- 它应该收集有关上次通话的一些信息。
- 将其写入日志并结束..
我已经看到在后台前台运行的任务,但是如何在每次通话后调用 App。
谢谢..
我正在尝试制作一个应用程序,一旦用户完成他/她的电话,它就会出现(每次和每次)。
用例:
“我的应用程序”当前未运行。
我已经看到在后台前台运行的任务,但是如何在每次通话后调用 App。
谢谢..
你不能这样做。很简单,iOS(还)没有任何这样的功能,您的应用程序将基于某些系统事件被触发。
但是,当您的应用程序正在运行时,您可以探索一些替代方案。
如果来电时您的应用正在运行
可能可以注册以接收来自 的通知(使用UINotificationCenter
呼叫)UITelephony
。
但是,如果您在通话开始时正在积极使用您的应用程序,它会-(void)applicationWillEnterForeground
在通话结束时调用。至于区分电话结束与只是定期回电话,我不知道。但这是一个开始。
如果您的应用程序在调用时正在运行,CoreTelephony 框架会提供调用状态。CTCall
类提供有关呼叫状态的信息。我自己没有使用过它,但您可能会发现它很有用。
extern NSString const *CTCallStateDialing;
extern NSString const *CTCallStateIncoming;
extern NSString const *CTCallStateConnected;
extern NSString const *CTCallStateDisconnected;
如果设备没有越狱,到现在为止在 iOS 中是不可能的。
iOS 不允许任何应用程序拦截任何其他应用程序的工作。