我有一个应该支持视频通话的VoIP应用。所以,我操作应用程序,锁定屏幕,然后接收传入的音频呼叫。问题是我没有弄清楚如何在用户按下" facetime" (视频通话)按钮。 Basicaly用户是应用程序的引导,但没有任何事情发生,因为我知道要听的代理或通知。
我查看了Skipe应用程序,似乎在通话屏幕上按下视频通话按钮时收到通知。所以当" facetime"在Skipe应用程序中按下按钮用户将导致应用程序和视频流开始。
简而言之,当用户按下来自通话套件的视频按钮时,有人可以指出我应该听哪种代表或通知以获取通知吗?
答案 0 :(得分:2)
根据这篇文章:https://stackoverflow.com/a/43487523/6296389,当手机被锁定时,有一个AppDelegate方法可以在从原生CallKit屏幕按下视频按钮时通知应用。
Objective C委托方法是:
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray *restorableObjects))restorationHandler
您应该检查:
[userActivity.activityType isEqualToString:@"INStartVideoCallIntent"]
确定收到的操作是否为开始视频意图。