Ios 自定义推送通知屏幕

Ios 自定义推送通知屏幕,ios,cocoa-touch,apple-push-notifications,Ios,Cocoa Touch,Apple Push Notifications,我正在开发一个iOS视频聊天应用程序。我想像FaceTime应用程序在有人呼叫我时那样显示通知 目前我使用的推送通知显示横幅,带有消息和自定义声音 相反,我希望我的应用程序为传入事件显示自定义屏幕,例如有人打电话给我。使用苹果公共API有可能吗 请参见下面的FaceTime通知屏幕 注:Skype也使用不同的通知屏幕 非常感谢, 丹尼尔 否,推送通知对话框是一个无法自定义的系统对话框。不过FaceTime是苹果的应用程序,他们可以按照自己的方式定制,而不向第三方开发者开放 但是,您可以利用iOS

我正在开发一个iOS视频聊天应用程序。我想像FaceTime应用程序在有人呼叫我时那样显示通知

目前我使用的推送通知显示横幅,带有消息和自定义声音

相反,我希望我的应用程序为传入事件显示自定义屏幕,例如有人打电话给我。使用苹果公共API有可能吗

请参见下面的FaceTime通知屏幕

注:Skype也使用不同的通知屏幕

非常感谢, 丹尼尔


否,推送通知对话框是一个无法自定义的系统对话框。不过FaceTime是苹果的应用程序,他们可以按照自己的方式定制,而不向第三方开发者开放

但是,您可以利用iOS 8.0添加的“UIMutableUserNotificationCategory”自定义通知中的操作:

示例教程:

我不知道他们是如何做到的,但Skype在用户在设备锁定和使用时收到呼叫时,都能获得定制的通知


编辑:看起来IOS8添加了一个交互式通知API。这可能是你的下一个问题:

我怀疑这与推送通知有关,事实上,你提到的Skype在推送通知可用之前就已经能够做到了

相反,如果你创建一个后台模式为“voip”(ip语音)的应用程序,iOS会为你提供一些额外的功能。一旦在网络套接字上检测到流量,并且调用
applicationWillEnterForeground:
,这将允许应用程序唤醒并进入前台。从那里你可以使用任何视图控制器


如果你现在认为«嗯,我的应用程序不提供voip,但我会假装这样做以获得更好的通知»-不要尝试,苹果会拒绝任何声称是voip应用程序的应用程序,只是为了获得无尽的背景时间。

你正在寻找“今日扩展”即小部件。我不希望此屏幕出现在“今天”屏幕中。我希望它在我的应用程序生成某些服务器端事件时出现。它应该取代传统的推送通知屏幕。Skype还使用自定义通知屏幕。所以我认为这是可能的。所以一定有办法定制这个屏幕。但我在苹果官方文档中找不到任何参考资料。您可以使用iOS 8.0支持的有限功能对其进行自定义。但不是FaceTime应用程序。Skype使用:有没有任何例子可以说明这一点?任何传入流量都将调用“applicationWillEnterForeground”?