当收到远程通知时,如何知道该应用程序当时是否处于活动状态?
When a remote notification is received, how to know whether the app is active at that time?
当我收到通知时,我想播放声音,所以我将 json 消息设置为 "sound":"mysound.mp3"
,当应用程序处于非活动状态时它可以正常工作。当应用程序激活时,我也想在收到消息时播放声音,但我发现这并不容易。
如果我将播放代码添加到- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
,那么如果应用程序处于非活动状态,声音将播放两次: 1. 收到远程消息; 2.用户点击消息调用播放声音代码。
有什么方法可以区分这两种情况或解决方法吗?
试试这个:
- (void) application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{
if ([[UIApplication sharedApplication] applicationState] == UIApplicationStateActive)
{
// Play sound when the app is active
}
}
当我收到通知时,我想播放声音,所以我将 json 消息设置为 "sound":"mysound.mp3"
,当应用程序处于非活动状态时它可以正常工作。当应用程序激活时,我也想在收到消息时播放声音,但我发现这并不容易。
如果我将播放代码添加到- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
,那么如果应用程序处于非活动状态,声音将播放两次: 1. 收到远程消息; 2.用户点击消息调用播放声音代码。
有什么方法可以区分这两种情况或解决方法吗?
试试这个:
- (void) application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{
if ([[UIApplication sharedApplication] applicationState] == UIApplicationStateActive)
{
// Play sound when the app is active
}
}