【问题标题】:Push Notification not receiving in background but working in foreground推送通知未在后台接收但在前台工作
【发布时间】:2014-09-14 05:25:38
【问题描述】:

当我的应用在前台时,它可以收到推送通知

- (void)application:(UIApplication *)application 
                       didReceiveRemoteNotification:(NSDictionary *)userInfo {

    NSLog(@"%@",userInfo);

}

登录控制台 -

{

    app =     {

        alert = dsafdas;

        badge = 1;

        sound = "myringtone.caf";

    };

}

但问题是应用在后台时不显示推送通知。

在应用程序的设置中

警报样式 - Banners

徽章应用程序图标 - enabled

声音 - enabled

有什么问题?

【问题讨论】:

    标签: ios objective-c iphone push-notification


    【解决方案1】:

    问题是:app 应该是aps

    {
        aps :  {
    

    代替

    {
        app :  {
    

    【讨论】:

      【解决方案2】:

      didReceiveRemoteNotificationforeground 中被调用,当处于免费模式时,用户需要点击以激活应用程序。

      - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
      {
          if ( application.applicationState == UIApplicationStateActive ){
            NSLog(@"app was already in the foreground");
          }
          else{
             NSLog(@"app was just brought from background to foreground");
          }
          NSLog(@"%@",userInfo);
      }
      

      【讨论】:

      • 目前我知道didReceiveRemoteNotification在应用程序处于前台时被调用。
      【解决方案3】:
      didReceiveRemoteNotification
      

      肯定会工作(如数据库操作或网络访问)。但在应用程序处于前台之前,它不会显示日志输出。

      注意:要在后台工作,您需要打开功能功能。

      【讨论】:

      • 是打开应用后显示的日志。问题是app 它会aps
      猜你喜欢
      • 2013-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-03
      • 2021-09-08
      • 1970-01-01
      • 2016-01-23
      相关资源
      最近更新 更多