4

使用したサーバーのリンクhttp://stefan.hafeneger.name/download/PushMeBabySource.zip

PushMeBabyサーバーを使用し、証明書とプロビジョニングプロファイルを使用してアプリをプッシュすると、アプリケーションを初めて実行したときにのみ、デバイスにアラートの形式で通知され、メソッドで記述されたステートメントがコンソールに出力されましたが、アプリケーションを複数回実行している間テストでは、デバイス トークンのみが返されます。次のメソッドはまったく実行されません。この問題の解決を手伝ってください。

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

    for (id key in userInfo) {
    NSLog(@”key: %@, value: %@”, key, [userInfo objectForKey:key]);

    UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@”alert” message:key delegate:self cancelButtonTitle:@”ok” otherButtonTitles:nil];
    [alert show];

    /*if(key)
    {

    UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@”alert” message:@”this is in application” delegate:self cancelButtonTitle:@”ok” otherButtonTitles:nil];
    [alert show];
    }*/

    }
}

できるだけ早く助けてください

4

2 に答える 2

3

アプリケーションを起動するたびにトークンを取得する必要があります。時々それは変わります。

于 2011-09-02T11:31:35.023 に答える
2
The delegate (didReceiveRemoteNotification) gets invoked when a running application receives a remote notification.  

If you implement application:didFinishLaunchingWithOptions: to handle an incoming push notification that causes the launch of the application, this method (didReceiveRemoteNotification) is not invoked for that push notification.

プッシュ通知の詳細については、
developer apple-ApplePushServiceを参照してください。

于 2011-09-02T12:21:07.483 に答える