2012-10-10 69 views
2

我向我的設備發送推送通知「aps」:{「content-available」:1},但它不會在後臺啓動應用程序。報亭推送通知不會啓動應用程序

但是,當我發這個方法被稱爲

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{ 
    NSLog(@"%@", userInfo); 
} 

日誌通知:

{ 
    aps =  { 
     "content-available" = 1; 
    }; 
} 

有什麼辦法來調試這個?

當推通知到達
+0

我有同樣的問題,應用程序只在前臺或後臺收到推送,而不是在完全關閉時收到推送。沒有人知道如何在不活動時讓應用程序接收推送信息? – Alf

回答

0

如果您的應用程序在後臺運行, - (空)應用程序:(UIApplication的*)應用程序didReceiveRemoteNotification:(NSDictionary的*)用戶信息將被調用。如果您的應用程序已終止, - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions將被調用以在後臺啓動您的應用程序。

您可以相應地開始下載問題。

注意:請確保您已正確設置報亭必需品。

  1. 你 「的info.plist」 有下列鍵也

    UINewsstandApp UIBackgroundModes 報攤內容

  2. 你有下面的一段在didFinishLaunchingWithOptions代碼:方法

[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@「NKDontThrottleNewsstandContentNotifications」];

這將確保每次iOS僅在開發模式下收到應用程序接收的內容可用:1通知。當應用程序在App Store中時,通常每天只能爲每個應用(報亭應用)發送一個此類通知。