【发布时间】:2016-05-28 09:20:13
【问题描述】:
我用 Objective-C 编写。 我正在使用远程推送通知进行应用程序控制。我不想在应用未激活时用警报和声音打扰用户。我需要做的 - 如果应用程序未激活 - 收到通知时什么也不做。 谢谢。
【问题讨论】:
标签: objective-c xcode notifications push
我用 Objective-C 编写。 我正在使用远程推送通知进行应用程序控制。我不想在应用未激活时用警报和声音打扰用户。我需要做的 - 如果应用程序未激活 - 收到通知时什么也不做。 谢谢。
【问题讨论】:
标签: objective-c xcode notifications push
您想发送静默通知。没有aps 键发送的通知是静默的。 iOS 不会播放声音,也不会在设备上显示横幅。如果您的应用正在运行,您的应用仍会收到此类通知,并且可以根据自己的选择做出响应。如果应用在后台,它可以显示本地通知,也可以忽略它。
【讨论】:
以下是您的案件需要收到的 palyload 结构:
{
"aps" : {
"badge" : 5,
},
"acme1" : "bar",
"acme2" : [ "bang", "whiz" ]
}
顺便说一句:如果你不需要徽章,你也不能提及它。
【讨论】:
只需将以下代码添加到您的 Appdelegate.m 文件中
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
UIApplicationState state = [application applicationState];
if(state == UIApplicationStateActive)
{
//app in active mode
// add your code as you want to handle
}
else{
// app is in terminated mode
}
}
【讨论】:
这比我想象的要容易。只是在 aps 部分的数组中没有警报和声音元素。 没有警报 - 没有什么可显示的。 没有声音 - 没有可播放的内容。
【讨论】: