Приложение вылетает при попытке поделиться изображением из приложения на Facebook
Я пытаюсь опубликовать сообщение из моего приложения на Facebook. Он работает нормально, когда я вписываю ссылку на изображение в клавишу "картинка", но приложение вылетает, когда я делюсь одним из своих собственных изображений. Это код, который я использую
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"Magic Photo from Abracadabra Snap!", @"name",@"Edit photos, move objects around,remove photo bombs", @"caption",@"Use automatic object detector to select objects or make your own custom selection.Remove the unwanted objects or photobomb,or move objects around.Do crazy stuff with your pictures , save and share with friends.", @"description",@"http://www.arkhitech.com/abracadabra/", @"link",tempImageForFacebookShare, @"picture",nil];
// Show the feed dialog
[FBWebDialogs presentFeedDialogModallyWithSession:nil parameters:params handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error)
{
if (error)
{
// An error occurred, we need to handle the error
// See: https://developers.facebook.com/docs/ios/errors
NSLog([NSString stringWithFormat:@"Error publishing story: %@", error.description]);
}
else {
if (result == FBWebDialogResultDialogNotCompleted)
{
// User cancelled.
NSLog(@"User cancelled.");
}
else
{
// Handle the publish feed callback
NSDictionary *urlParams = [self parseURLParams:[resultURL query]];
if (![urlParams valueForKey:@"post_id"])
{
// User cancelled.
NSLog(@"User cancelled.");
}
else
{
// User clicked the Share button
NSString *result = [NSString stringWithFormat: @"Posted story, id: %@", [urlParams valueForKey:@"post_id"]];
NSLog(@"result %@", result);
}
}
}
}];
Изображение 10*10, и ошибка Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIImage length]: unrecognized selector sent to instance 0xab7b900'
, Пожалуйста, руководство по этому вопросу
2 ответа
Не работает с UIImage
, так как Api позволяет только string
s:
картинка: Определяет изображение для предварительного просмотра, связанное со ссылкой. строка
Источник: Справочник по API Graph
picture
Параметр является предварительным изображением для ссылки и не может быть загружен.
Ваш код выглядит правильно, но вы отправляете UIImage
в Facebook, где он ожидает NSArray
с UIImages
в этом.
Пожалуйста, измените ваш NSDictionary
код следующим образом:
@[tempImageForFacebookShare], @"picture",
И посмотри, исправила ли она проблему.