2011-12-31 12 views
6

Tôi có câu hỏi để hỏi về thông báo. Sau một vài giờ để tìm hiểu cách triển khai các thông báo đẩy trên iPhone, giờ đây nó đã xuất hiện!Cách quản lý thông báo khi người dùng nhấp vào huy hiệu

Làm cách nào để quản lý người dùng nhấp vào huy hiệu hoặc nhấp vào chế độ xem cảnh báo? Điều gì xảy ra khi người dùng nhấp vào đó?

Tôi đã cố gắng gửi cho tôi một số thông báo và số trên biểu tượng ứng dụng theo số gia tăng. Trong đó cách nhấp vào đó có thể hiển thị một uiview để quản lý thông báo đến và hiển thị tin nhắn đã đọc và chưa đọc?

Có hướng dẫn cho nó không? Tôi muốn lưu tất cả các tin nhắn bên trong một uitableview.

Trả lời

34

Bạn muốn đọc Handling Local and Remote Notifications

Về cơ bản trong đại biểu ứng dụng của bạn, bạn muốn thực hiện:

- (BOOL)application:(UIApplication *)app didFinishLaunchingWithOptions:(NSDictionary *)launchOptions; 

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

Và xử lý launchOptions/UserInfo cho dữ liệu thông báo.

Làm thế nào tôi thường xử lý dữ liệu là:

- (BOOL)application:(UIApplication *)app didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
    NSDictionary* userInfo = 
     [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; 
    if (userInfo) { 
     [self processRemoteNotification:userInfo]; 
    } 
    [window addSubview:viewController.view]; 
    [window makeKeyAndVisible]; 
    return YES; 
} 

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { 
    [self processRemoteNotification:userInfo]; 
} 

Định dạng cho UserInfo được ghi chép lại phần The Notification Payload.

ví dụ: phím "aps" sẽ cung cấp cho bạn một NSDictionary khác, sau đó tra cứu phím "cảnh báo" sẽ cung cấp cho bạn thông báo cảnh báo được hiển thị. Ngoài ra, bất kỳ dữ liệu tùy chỉnh nào bạn gửi trong tải trọng JSON cũng sẽ ở trong đó.

NSDictionary *apsInfo = [userInfo objectForKey:@"aps"]; 

NSString *alertMsg = @""; 
NSString *badge = @""; 
NSString *sound = @""; 
NSString *custom = @""; 

if([apsInfo objectForKey:@"alert"] != NULL) 
{ 
    alertMsg = [apsInfo objectForKey:@"alert"]; 
} 


if([apsInfo objectForKey:@"badge"] != NULL) 
{ 
    badge = [apsInfo objectForKey:@"badge"]; 
} 


if([apsInfo objectForKey:@"sound"] != NULL) 
{ 
    sound = [apsInfo objectForKey:@"sound"]; 
} 

if([userInfo objectForKey:@"Custom"] != NULL) 
{ 
    custom = [userInfo objectForKey:@"Custom"]; 
} 
+1

Tôi vừa theo dõi thông tin trên trang web của Apple và không gặp bất kỳ sự cố nào. Chính xác thì bạn có vấn đề gì? –

+0

đã hiểu !!!! THANKS BẠN VERY VERY RẤT MUCH :) – JackTurky

+0

Cập nhật câu trả lời với thông tin bạn muốn. –