ios - 查找启动应用程序 : banner notification, 警报通知或图标点击的事件?

标签 ios push-notification

我可以找出在 iOS 上启动应用程序的事件吗?

我需要区分以下内容:

  1. 点击图标
  2. 横幅通知
  3. 警报通知

或者,我可以查看应用程序本地设置(横幅或警报通知设置)吗?

最佳答案

要确定应用程序是否是通过按下通知启动的,您需要实现 2 个方法。

首先,在应用程序 didFinishLaunchingWithOptions 中,执行以下操作:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
if ([launchOptions valueForKey:@"UIApplicationLaunchOptionsRemoteNotificationKey"]) {
 // Handle notification
}

第二:

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
if (application.applicationState == UIApplicationStateActive) {
    // The app was open when a remote notification was received...
} else {
    // The app was in the background and just came to the foreground in response to the user pressing the push notification
}

}

您可以使用以下方式查看已启用的通知类型:

UIRemoteNotificationType notificationTypes = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];

但是,您无法区分横幅通知或警报通知。

关于ios - 查找启动应用程序 : banner notification, 警报通知或图标点击的事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11134775/

相关文章:

android - 推送通知接收器 android( list ?)

android - GCM 是否在后台运行?

IOS9 voip通讯

iphone - iPhone 推送通知声音有限制吗?

ios - 具有两个表 Controller 的主从应用程序中缺少导航

ios - 如何在 UISlider 中显示 AVplayer 当前播放持续时间

ios - 如何向 UITableViewCell 添加触摸识别器?

ios - Firebase 遍历嵌套数据并存储在数组中

php - 使用 php 向 Google Cloud Messaging 发送通知给我未经授权的错误 401

iphone - 在 ABPeoplePickerNavigationController 中自定义表格单元格