我正在开发一个应用,我必须以deviceToken
格式向uuid
和JSON
发送"regid":"x1y2z3","uuid":"1a2b3c"
格式,如:NSString
我如何存储{{1}以这种格式进入NSData
并将其发送到服务器?
regid
字符串与x1y2z3
类似,uuid
字符串与1a2b3c
类似。
我的代码:
PushNotification* pushHandler = [self.viewController getCommandInstance:@"PushNotification"];
[pushHandler didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
NSString *deviceT = [[deviceToken description] stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"<>"]];
NSString *tkStr = [[NSString alloc]initWithData:deviceToken encoding:NSUTF8StringEncoding];
tkStr = [deviceT stringByReplacingOccurrencesOfString:@" " withString:@""];
NSLog(@"Device Token = %@",tkStr);
//UUID
CFUUIDRef uuid = CFUUIDCreate(kCFAllocatorDefault);
NSString *uuidStr = ( NSString *)CFUUIDCreateString(kCFAllocatorDefault, uuid);
CFRelease(uuid);
NSString *finalUIDstr = [uuidStr stringByReplacingOccurrencesOfString:@"-" withString:@""];
NSLog(@"UUID = %@",finalUIDstr);
NSArray *keysArray = [NSArray arrayWithObjects:@"regid", @"uuid", nil];
NSArray *objectArray = [NSArray arrayWithObjects:tkStr,finalUIDstr, nil];
//Dictionary
NSDictionary *jsonDict = [NSDictionary dictionaryWithObjects:objectArray forKeys:keysArray];
答案 0 :(得分:2)
如果你想生成那个JSON字符串,你可以构建你的字典(这是在Xcode 4.5中更简洁的方式,而不是构建这两个数组然后将它们组合成字典):
NSDictionary *dictionary = @{@"regid":tkStr,@"uuid":finalUIDstr};
然后生成您的JSON字符串:
NSError *error;
NSData *data = [NSJSONSerialization dataWithJSONObject:dictionary
options:0
error:&error];
答案 1 :(得分:1)
将NSDictionary转换为Json(NSJSONSerialization或SBJson)并将其作为Application / Json发布到服务器。