0

我在我的应用程序委托文件中使用了这些方法,并且能够在我的 iphone 上激活通知服务,但我的问题是,因为我想在我想要的时候向我的朋友 iphone 发送警报。为此,我想使用推送通知来自动更新他手机中的闹钟时间和消息。


    //in did finishlaunching

    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:
         (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];

- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken1 { 

    NSString *str = [NSString 
                     stringWithFormat:@"Device Token=%@",deviceToken1];
    NSLog(@"device......%@",str);

}

- (void)application:(UIApplication *)app didFailToRegisterForRemoteNotificationsWithError:(NSError *)err { 

    NSString *str = [NSString stringWithFormat: @"Error: %@", err];
    NSLog(@"device......%@",str);    

}

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

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

}
4

1 回答 1

0

而不是需要您的朋友注册他们的设备的推送通知。然后您需要确定哪个设备 ID 属于您的朋友。我建议的一个更简单的解决方案是简单地使用短信通知,这将允许您个性化您想要的任何电话号码。

-(IBAction) sendInAppSMS:(id) sender
{
    MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease];
    if([MFMessageComposeViewController canSendText])
    {
        controller.body = @"Hello! Time to get up!;
        controller.recipients = [NSArray arrayWithObjects:@"12345678", @"87654321", nil];
        controller.messageComposeDelegate = self;
        [self presentModalViewController:controller animated:YES];
    }
}

来源:http ://blog.mugunthkumar.com/coding/iphone-tutorial-how-to-send-in-app-sms/

注意:使用 SMS 可能更有用,因为如果个人的手机处于关机状态,他们将在手机打开后收到 SMS 消息。但是,如果个人的电话已关闭并且他们收到推送通知,则不能保证他们会收到它。如果需要他们接收消息,那么推送通知可能不是最佳解决方案。

于 2012-09-18T13:56:44.673 回答