【问题标题】:iOS7 Silent Push notification not workingiOS7静默推送通知不起作用
【发布时间】:2014-01-14 22:00:39
【问题描述】:

我在 iOS7 中实现了推送通知。由于iOS7具有通过使用方法静默接收推送通知的功能

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo performFetchWithCompletionHandler:(void(^)(UIBackgroundFetchResult))completionHandler
{
}

但是当我发送通知时,这个方法永远不会被调用。我在通知托盘中收到通知但通知不应该在那里,因为它是无声的。我正在使用 Raywenderlich 的 PHP 代码发送推送通知。我也像这样添加了内容可用密钥

// Create the payload body

$body['aps'] = array(
    'content-available' => '1',
    'alert' => $message,
    'sound' => 'default'
    );

请帮忙!!!

【问题讨论】:

  • 这有几个原因,首先检查你的服务器日志,它能够成功地将消息发送到苹果服务器吗?或者您仅在 IOS 7 中遇到此问题
  • 您确定您拥有正确的证书和设备令牌吗?在调试模式下,您需要使用调试证书,并且设备令牌与您在生产中拥有的不同。此外,如果您希望推动静音,则应省略声音值 AFAIK。最后,您可以使用 Urbanairship 轻松测试推送,而不是编写自己的 php 实现
  • 我正在收到通知.. 没问题...但没有收到静默通知
  • 我不想向用户显示通知..
  • 如果您不想显示通知,请忽略有效负载中的“警报”。

标签: ios objective-c ios7 apple-push-notifications


【解决方案1】:

如果您想静默推送通知,则不应在有效负载中添加“警报”参数。

像这样传递你的参数。

$body['aps'] = array(
'content-available' => '1'
);

并验证您在项目 plist 中启用了远程通知。

您将通过实现此委托获得通知。

 -(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{
// Call or write any code necessary to download new data.
completionHandler(UIBackgroundFetchResultNewData);
 }

【讨论】:

  • 我已经试过这个..现在当应用程序在后台时没有收到通知..它没有调用 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler { } 在后台模式
  • 检查我更新的答案。点击此链接了解更多信息。 mobile.tutsplus.com/tutorials/iphone/…
  • 想要通知一件事......在前台的情况下,这个方法被调用 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
【解决方案2】:

尝试使用整数值:

$body['aps'] = array(
    'content-available' => 1,
    'alert' => $message,
    'sound' => 'default'
    );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-05
    • 2013-10-14
    • 1970-01-01
    • 1970-01-01
    • 2018-02-17
    • 2018-12-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多