2014-03-12 1 views
1

SNSPublishRequest를 사용하여 SNS에 게시하려고하지만 JSON을 실제로 사용하도록 JSON의 형식을 지정하는 방법을 알지 못합니다. APS 사전. "default"를 위해 뭔가 넣으면 그 메시지를 보낼 것입니다. 그러나 APNS 사전도 추가하면 아무 것도 표시되지 않는 것 같습니다. 이것이 JSON 요청의 형식을 지정하는 방법입니다.SNSPublishRequest APPS 배열을 보내고 APNS에 대한 "기본"메시지가 표시되지 않는 방법

NSDictionary *parameters = @{@"default" : @"", 
          @"APNS" : @{@"aps": @{@"alert": @"hello"}}}; 
NSError *error; 
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:parameters 
                options:0 
                error:&error]; 

NSString *JSONString = [[NSString alloc] initWithBytes:[jsonData bytes] length:[jsonData length] encoding:NSUTF8StringEncoding]; 
NSLog(@"JSON OUTPUT: %@",JSONString); 

SNSPublishRequest *pr = [[SNSPublishRequest alloc] initWithTopicArn:@"someTopic" andMessage:JSONString]; 
pr.messageStructure = @"json"; 

답변

1

SNS의 APN 사전에 JSON 인코딩 문자열 형식이 필요하다고 생각합니다. 우리는 모든 것을 피하고 \ s를 덧붙여 야합니다.

NSString* JSONString = @"{\"default\": \"<enter your message here>\",\"APNS_SANDBOX\":\"{\\\"aps\\\":{\\\"alert\\\":\\\"<HELLO>\\\"}}\"}"; 
+0

하지만 절름발이가 작동합니다. – MikeT

관련 문제