我正在接收推送通知列表。如果用戶選擇了一個通知我想從notification.from通知列表中選擇的數據提前在選擇接收到的推送通知時獲取APNS有效負載內容
回答
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
NSLog(@"Notification Received .. Dictionary %@",userInfo);
NSString *user_TYP = [[NSUserDefaults standardUserDefaults]valueForKey:@"User_TYPE_LOG"];
NSLog(@"Usr type == %@",user_TYP);
// all the data required is present in your info dictionary
id data1 = userInfo[@"key1"]; // user your data_type instead of id
id data2 = userInfo[@"key2"];
if(received data == x && [user_TYP isEqualToString:@"type1"])
do_something;
else
do_something_else;
}
它不工作在ios 10 –
@ Anbu.Karthik它正在工作 –
感謝斯威夫特:通知數據傳送到你的應用程序中application:didReceiveRemoteNotification:
。 如果您想要在applicationDidBecomeActive:
中處理它,您應該將其存儲在application:didReceiveRemoteNotification:
中,並在applicationDidBecomeActive
中再次閱讀。
當您的應用處於前臺應用:didReceiveRemoteNotification:
時,您可以查詢UIApplication.sharedApplication().applicationState
以確定您的應用是否已在前臺。如果是,那就馬上處理通知。
如果應用程序是通過推送通知推出,您還可以檢查
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// app was launched from push notification, handling it
let remoteNotification: NSDictionary! = launchOptions?[UIApplicationLaunchOptionsRemoteNotificationKey] as? NSDictionary
if (remoteNotification != nil) {
}
}
推動數據目標C:查詢應用程序狀態 可以查詢-[UIApplication applicationState]
找出如果您的應用程序已經在前景和應用程序時,從推使用推出:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//Check for options
if (launchOptions != nil)
{
//Store the data from the push.
dUserInfo = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
if (dUserInfo != nil)
{
//Do whatever you need
}
}
return YES;
}
謝謝,我會嘗試這個 –
十分感謝這個工作:) –
我所做的是
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
NSLog(@"Notification Received .. Dictionary %@",userInfo);
NSString *user_TYP = [[NSUserDefaults standardUserDefaults]valueForKey:@"User_TYPE_LOG"];
NSLog(@"Usr type == %@",user_TYP);
if ([user_TYP isEqualToString:@"type1"])
{
// VW_User_NOTific *VW_SER = [[VW_User_NOTific alloc]initWithNibName:@"VW_User_NOTific" bundle:nil];
VW_User_NOTific *listingVC = [[VW_User_NOTific alloc] init];
[(UINavigationController *)self.window.rootViewController pushViewController:listingVC animated:YES];
}
else
{
VW_JS_Notific *listingVC = [[VW_JS_Notific alloc] init];
[(UINavigationController *)self.window.rootViewController pushViewController:listingVC animated:YES];
}
}
- 1. APNS推送通知收到不正確
- 2. 拒絕推送通知連接到APNS
- 3. APNS推送沒有收到
- 4. 沒有APNS的推送通知
- 5. 隱形APNS推送通知
- 6. 實施推送APNs通知
- 7. 在後臺顯示整個接收內容的推送通知
- 8. iOS - 在接收到推送通知時更改視圖的內容
- 9. VoIP APNS推送有效負載是否包含SIP邀請?
- 10. APNS PHP推送通知不起作用。獲取超時
- 11. 如何在iOS6的背景中獲取APNS推送通知?
- 12. 收到推送通知時從視圖中選擇一行
- 13. IOS推送通知:發送此有效負載時沒有得到任何推送
- 14. WP8.1接收推送通知
- 15. 如何在沒有AppDelegate的iOS中收到推送通知時收到通知?
- 16. 如何獲得本地通知內的推送通知有效載荷
- 17. 處理推送通知有效負載數據
- 18. 檢查iOS推送通知有效負載
- 19. 即使連接到APNS,也不會發送推送通知
- 20. APNS在收到時停止通知
- 21. 推送通知的最小負載?
- 22. 不帶APNS的推送通知具有安全的內聯網
- 23. APNS推送通知未發送:Baddevicetoken
- 24. 發送推送通知和APNS握手
- 25. 未收到推送通知
- 26. 未收到推送通知
- 27. 蘋果推送通知:在有效負載中發送兩次消息
- 28. 分發時未收到推送通知
- 29. 推送通知沒有收到content_available
- 30. GCM iOS沒有收到推送通知
你試過了什麼? – GeneCode
@ Anbu.Karthik我已經發布我的代碼,請分享你的想法 –
@GeneCode我已經發布我的代碼,請分享你的想法 –