我創建一個iOS的應用程序中,我正在從服務器證件號碼,而應用程序是在前臺,我更新的如何更新證件號碼,當應用程序在後臺
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
}
徽章號碼但是當應用程序在後臺時,我不知道應該調用哪個函數。
我創建一個iOS的應用程序中,我正在從服務器證件號碼,而應用程序是在前臺,我更新的如何更新證件號碼,當應用程序在後臺
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
}
徽章號碼但是當應用程序在後臺時,我不知道應該調用哪個函數。
使用此
- (void)applicationDidEnterBackground:(UIApplication *)application
{
[UIApplication sharedApplication].applicationIconBadgeNumber = X;
NSLog(@"Application Did Enter Background");
}
發送你的徽章數量的推送通知
我知道,當應用程序處於後臺時,didReceiveRemoteNotification方法永遠不會調用。此方法applicationDidEnterBackground:當我點擊主頁按鈕時調用。這是錯誤的。當應用程序處於後臺時,徽章號碼永遠不會更新,通過此代碼,我可以在單擊主頁按鈕時更新徽章號碼。這不是我的問題。我想在應用程序處於後臺時更新徽章號碼。任何困惑? –
看到這個https://developer.apple.com/library/ios/documentation/iphone/conceptual/iphoneosprogrammingguide/ManagingYourApplicationsFlow/ManagingYourApplicationsFlow.html並告訴我你說哪個狀態? –
有效載荷可以從你的服務器發送自身的證件號碼。
默認情況下,當您在APN有效載荷中指定徽章號碼時,不需要設置應用程序的徽章號碼。如果您沒有收到來自服務器的徽章號碼,那麼您無法執行此操作,直到用戶打開該應用程序。
但是在ios7 APN有一個新功能。
通過設置標誌Content-Available:1
將讓您的應用程序在收到通知後立即運行,您可以設置您的徽章號碼。
您可以發送證件號碼在推送通知這樣
{"aps":{"badge":"3","alert":"help","sound":"sound.caf"}}
是的,但這是唯一的方法 – nerowolfe
當應用程序在後臺didReceiveRemoteNotification
方法永遠不會調用。爲了在你的應用程序處於後臺時執行某些操作,你需要在AppDelegate的applicationDidEnterBackground:
方法中實現你的邏輯。
我知道,當應用程序在後臺didReceiveRemoteNotification方法永遠不會調用。此方法applicationDidEnterBackground:當我點擊主頁按鈕時調用。這是錯誤的。當應用程序處於後臺時,徽章號碼永遠不會更新,通過此代碼,我可以在單擊主頁按鈕時更新徽章號碼。這不是我的問題。我想在應用程序處於後臺時更新徽章號碼。任何困惑? –
然後你可以使用這個方法applicationWillEnterForeground,基本上它的服務器負責給你發送徽章號碼,作爲iOS開發者,我們只清除徽章號碼。請關注您的網站開發人員向您發送推送字典中的徽章號碼//創建有效內容主體 $ body ['aps'] = array( 'alert'=> $ message, 'badge'=> 1 , 'sound'=>'default' );否則你將無法做到這一點。希望這會解決你的困惑。 – Irfan
試試這個[UIApplication sharedApplication] .applicationIconBadgeNumber = 2;任何你想要的號碼 –
你可以隨時編輯你自己的問題。無需一次又一次詢問[同一問題](http://stackoverflow.com/q/21981350/1603072)。 – Bhavin