2013/06/12

[iOS][Objective-C]Remote PushNotificationの実装 iOS Objective-C編

昨日は、「Remote PushNotificationの実装 iOS Dev Center設定編」を書いたので、今日は、iOS側(Objective-C)を見ていく。

Certificateファイルのインストールが完了したということで、下のようにプログラムを組む。

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:UIRemoteNotificationTypeAlert];
すると、下のうちどちらかを返してくれる。
//エラーの場合
- (void)application:(UIApplication *)app didFailToRegisterForRemoteNotificationsWithError:(NSError *)err {
    NSLog(@"Error in registration. Error: %@", err);
}
//正常終了の場合
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)devToken {

}
で正常終了の場合、NSData型でトークンを返してくれるので、これをサーバー側で保存することになります。

ちなみに、通知からアプリを起動した場合、
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{

}
のlaunchOptionsにUIApplicationLaunchOptionsRemoteNotificationKeyキーで情報が入っているようだ。

逆に何もない場合、空で返してくるので、現時点では、
//Remote PushNotificationからの起動の場合
if ([launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey] != nil) {

//Remote PushNotification以外の起動。
}else{

}
ここまででアプリ側の実装は完了したので、次回は、サーバー側について書きたいなと思います。

0 コメント:

コメントを投稿