Приложение вылетает при попытке поделиться изображением из приложения на 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 позволяет только strings:

картинка: Определяет изображение для предварительного просмотра, связанное со ссылкой. строка

Источник: Справочник по API Graph

picture Параметр является предварительным изображением для ссылки и не может быть загружен.

Ваш код выглядит правильно, но вы отправляете UIImage в Facebook, где он ожидает NSArray с UIImages в этом.

Пожалуйста, измените ваш NSDictionary код следующим образом:

@[tempImageForFacebookShare], @"picture",

И посмотри, исправила ли она проблему.

Другие вопросы по тегам