【发布时间】:2014-05-02 00:49:44
【问题描述】:
我目前正在开发一个与圣地亚哥的大都会交通系统一起使用的交通网络应用程序。对于 iOS,我计划使用包含三个项目的 TabBar,[Home] [Favorites] [Notifications]。 [Home] 指向主页(以及任何其他页面),[Favorites] 是您可以设置您最喜欢的公共汽车/无轨电车站的地方。
我计划在 [Favorites] 中设置一个通知,以便在巴士在 MTS 提供的预定时间到达之前发送给您。因此,例如,如果一辆公共汽车将在 10:30 到达,并且您将通知设置为提前 5 分钟到达以提醒您,那么您将在 10:25 收到一辆。
我想将帐户与设备令牌相关联,我在这里阅读了一些问题,例如Linking user account to device token for push notifications。
我相信可以通过在我登录时将设备令牌发送到 UIWebView 以某种方式链接帐户。
希望有人可以帮助我。
编辑:
下面是Home.m中的Obj-C代码
#import "Home.h"
@implementation HomeViewController
- (void)viewDidLoad
{
[super viewDidLoad];
NSURL *URL1 = [NSURL URLWithString:@"url"];
NSURLRequest *Request1 = [NSURLRequest requestWithURL:URL1];
[webView1 loadRequest:Request1];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView {
NSLog(@"1");
NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults];
NSString *deviceToken = [defaults objectForKey:@"deviceToken"];
bool tokenIsSent = [defaults boolForKey:@"tokenIsSent"];
NSString *newToken = [defaults stringForKey:@"newToken"];
NSLog(@"2");
NSString *urlString = [NSString stringWithFormat:@"url"];
NSURL *url = [[NSURL alloc] initWithString:urlString];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url];
NSData *usernameData;
NSURLResponse *response;
usernameData = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:nil];
NSString *username = [[NSString alloc] initWithData:usernameData encoding:NSUTF8StringEncoding];
NSLog(@"3");
if (deviceToken != nil && tokenIsSent == NO) {
NSLog(@"4");
NSString *urlString = [NSString stringWithFormat:@"url/s=%@&u=%@",newToken, username];
NSURL *url = [[NSURL alloc] initWithString:urlString];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url];
NSData *urlData;
NSURLResponse *response;
urlData = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:nil];
NSString *info = [[NSString alloc] initWithData:urlData encoding:NSUTF8StringEncoding];
if([info isEqual: @"success"]){
[defaults setBool:YES forKey:@"tokenIsSent"];
NSLog(@"5");
}else{
[defaults setBool:NO forKey:@"tokenIsSent"];
NSLog(@"6");
}
[defaults synchronize];
} else {
NSLog(@"7");
}
}
【问题讨论】:
标签: php ios iphone push-notification apple-push-notifications