iOS Facebook SDK - Стена "Публиковать в друзьях" со значением конфиденциальности "SELF" не установлена
Я хочу установить конфиденциальность записи на стене друзей на SELF.
так что только он может видеть это, я знаю, что это возможно, потому что есть свойство, но нет ни одного документально подтвержденного того, как этого добиться.
https://developers.facebook.com/docs/graph-api/reference/post
это код, который я использую:
NSMutableDictionary *params =
[NSMutableDictionary dictionaryWithObjectsAndKeys:
toStr, @"to",
@"{'value': 'SELF'}", @"privacy",
@"Facebook SDK for iOS", @"name",
@"Build great social apps and get more installs.", @"caption",
@"The Facebook SDK for iOS makes it easier and faster to develop Facebook integrated iOS apps.", @"description",
@"https://developers.facebook.com/ios", @"link",
@"https://raw.github.com/fbsamples/ios-3.x-howtos/master/Images/iossdk_logo.png", @"picture",
nil];
//NSLog(@"params %@", params);
[FBWebDialogs presentFeedDialogModallyWithSession:nil
parameters:params
handler:
^(FBWebDialogResult result, NSURL *resultURL, NSError *error) {
if (error) {
// Error launching the dialog or publishing a story.
NSLog(@"Error publishing story.");
} else {
if (result == FBWebDialogResultDialogNotCompleted) {
// User clicked the "x" icon
NSLog(@"User canceled story publishing.");
} else {
// Handle the publish feed callback
NSDictionary *urlParams = [self parseURLParams:[resultURL query]];
if (![urlParams valueForKey:@"post_id"]) {
// User clicked the Cancel button
NSLog(@"User canceled story publishing.");
} else {
// User clicked the Share button
NSString *msg = [NSString stringWithFormat:
@"Posted story, id: %@",
[urlParams valueForKey:@"post_id"]];
NSLog(@"%@", msg);
// Show the result in an alert
success();
}
}
}
}];
Но когда я смотрю на API GRAPH, это говорит:
"privacy": {
"value": ""
},
1 ответ
Попробуй это. Может быть, это помогает.
NSDictionary *privacyDict = [[NSDictionary alloc] initWithObjectsAndKeys:
@"SELF",@"value",
nil];
SBJSON *jsonWriter = [[SBJSON alloc] init];
NSString *privacyJSONStr = [jsonWriter stringWithObject:privacyDict];
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
@"my message", @"message",
privacyJSONStr, @"privacy",
nil];
Установите objectofkey (значение, друзья, сети, разрешить, запретить) из словаря privacyDict в соответствии с вашим использованием
NSDictionary *privacyDict = [[NSDictionary alloc] initWithObjectsAndKeys:
@"CUSTOM",@"value",
@"SOME_FRIENDS",@"friends",
@"[comma separated friends id]",@"allow",
nil];