上篇文章咱們講了如何生成測試push的證書(<一>iOS 開發Push的我的看法圖文並茂詳細到我寫的想吐!!!!!!!!!),這篇咱們來說講如何進行開發測試。html
工程中咱們應該怎麼寫呢。app
首先在AppDelegate類中的測試
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions編碼
方法中加入以下代碼,spa
[[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
這是註冊push的方法。代理
接下來在寫入3個代理方法。htm
/*! * @author Yunis_song, 15-03-27 17:03:03 * * @brief 獲取tonken * */ - (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken { NSLog(@"My token is: %@", deviceToken); } /*! * @author Yunis_song, 15-03-27 17:03:28 * * @brief 獲取token失敗 * */ - (void)application:(UIApplication*)application didFailToRegisterForRemoteNotificationsWithError:(NSError*)error { NSLog(@"Failed to get token, error: %@", error); } /*! * @author Yunis_song, 15-03-27 17:03:45 * * @brief 推送的消息 * */ - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { NSLog(@"userinfor is : %@", userInfo); }
這3個方式分別是獲取token成功,獲取token失敗,已經push的消息是什麼。blog
用咱們上一篇生成的證書,在設備上運行。token
若是你不知道怎麼運行,那我只能說少年,去百度!!!!!!開發
運行後會首先彈一個框出來,是要求你容許進行推送服務的,選擇容許。
而後在
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
方法裏面就能夠獲得token。記錄這個token。
下面推送要用到。
到這裏,最簡單的推送編碼咱們已經完成,下面要去下一個關於推送的工程,來驗證這個證書的正確性。
下載工程。PushMeBaby
在這個工程的ApplicationDelegate中有這樣的代碼。
self.deviceToken = @"0dcb0f1d 18285786 acefb3c0 5709186f d45a107f 2a2aca28 4e5084b9 18f8e42e"; self.payload = @"{\"aps\":{\"alert\":\"This is some fancy message.\", \"sound\":\"sound.aiff\",\"badge\":1}}"; self.certificate = [[NSBundle mainBundle] pathForResource:@"aps_development" ofType:@"cer"];
其中,
self.deviceToken填寫你剛纔獲得的token。
self.certificate 這裏是讀取推送的cer文件,上一篇<一>iOS 開發Push的我的看法圖文並茂詳細到我寫的想吐!!!!!!!!!咱們已經獲得了他,把它拖入到工程中。
而後運行,會出現一個彈框。
選擇容許,出現程序以下,點擊push不出意外,你剛纔運行的手機就會接受到這個push的消息。
以下:
至此,簡單的push大功告成。!
Demo下載地址。測試工程
歡迎轉載,轉載請註明出處。http://www.cnblogs.com/yunis/p/4372453.html