2016-04-11 4 views
2

Ich versuche zu Facebook ein gemeinsam genutztes Bild, und ich brauche, dass der App-Name in dem gemeinsamen Beitrag in FacebookNicht Bild sehen nach gemeinsamen Artikel zu Facebook mit FBSDKShareOpenGraphObject

dies sein wurde, ist der Code:

FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init]; 
UIImage *image1 = [GeneralMethods imageConvertToSizeWithImage:postImageView.image scaledToWidth:300]; 
photo.image = [UIImage imageNamed:@"VImage.png"]; 
photo.userGenerated = YES; 

NSDictionary *properties = @{ 
          @"og:type": @"article", 
          @"og:title": @"new item", 
          @"og:description": @"bla bla", 
//         @"og:image": @[photo], 
          }; 
FBSDKShareOpenGraphObject *object = [FBSDKShareOpenGraphObject objectWithProperties:properties]; 



// [object setPhoto:photo forKey:@"og:image"]; 

// Create an action 
FBSDKShareOpenGraphAction *action = [[FBSDKShareOpenGraphAction alloc] init]; 
action.actionType = @"news.publishes"; 


[action setObject:object forKey:@"article"]; 


// Add the photo to the action. Actions 
// can take an array of images. 
[action setArray:@[photo] forKey:@"image"]; 

// Create the content 
FBSDKShareOpenGraphContent *content = [[FBSDKShareOpenGraphContent alloc] init]; 
content.action = action; 
content.previewPropertyName = @"article"; 

[FBSDKShareDialog showFromViewController:ParetDelaget withContent:content delegate:self]; 

dies ist Facebook Vorschau-Seite mit dem Bild, das ich hinzufügen:

enter image description here

dies die Post in meinem Facebook Wand ohne Bild ist:

enter image description here

was ich falsch gemacht?

Antwort

2

Kommentar- diese Zeile:

//         @"og:image": @[photo], 

und kommentieren Sie diese ein:

[action setArray:@[photo] forKey:@"image"]; 

Wie dies haben Sie sowohl Bild, Titel und Beschreibung zeigt.

Eine kleine Bemerkung: das Foto-Objekt ein String URL

In meinem Fall sein muss, hier ist der resultierende Code:

// Create an object 
NSDictionary *properties = @{ 
          @"og:type": @"article", 
          @"og:url": @"https://the_link_you_want.com", 
          @"og:title": @"your title", 
          @"og:description": @"your description", 
          @"og:image": @"http://url_to_your_image" 
          }; 

FBSDKShareOpenGraphObject *object = [FBSDKShareOpenGraphObject objectWithProperties:properties]; 

// Create an action 
FBSDKShareOpenGraphAction *action = [[FBSDKShareOpenGraphAction alloc] init]; 
action.actionType = @"news.publishes"; 

[action setObject:object forKey:@"article"]; 

// Create the content 
FBSDKShareOpenGraphContent *content = [[FBSDKShareOpenGraphContent alloc] init]; 
content.action = action; 
content.previewPropertyName = @"article"; 


FBSDKShareDialog *shareDialog = [[FBSDKShareDialog alloc] init]; 
shareDialog.fromViewController = self; 
shareDialog.shareContent = content; 
[shareDialog show]; 

if (![shareDialog canShow]) { 
    // update the app UI accordingly 
} 
NSError *error; 
if (![shareDialog validateWithError:&error]) { 
    NSLog(@"FB Error: %@", error); 
} 

Hoffnung, die

+0

dank hilft es hilft (-: –