4 votes

Où puis-je afficher fb:explicitly_shared pour le sdk iOS ?

C'est peut-être une question stupide, mais je n'arrive pas à trouver où ajouter le bool fb:explicitly_shared.

J'ai réussi à faire fonctionner cette fonction en utilisant l'explorateur d'API graphique, en ajoutant simplement le champ et en lui attribuant la valeur "true". Cela fonctionne à merveille.

Mais lorsque j'essaie de le faire à partir de mon application iOS, cela ne fonctionne tout simplement PAS.

- (id<OGObject>)myObjectForObject:(NSDictionary*)object
{

    NSString *format =
    @"http://www.myurl.com/fbobjects/object.php?"
    @"fb:app_id=<my_app_id>&og:type=%@"
    @"&fb:explicitly_shared=true"
    @"&og:title=%@"
    @"&og:description=%@"
    @"&og:image=http://www.myimageurl.com/image.png"
    @"&body=%@";

    id<OGObject> result = (id<OGObject>)[FBGraphObject graphObject];

    // Give it a URL that will echo back the name of the wod as its title,
    // description, and body.
    result.url = [NSString stringWithFormat:format,
                  @"myapp_namespace:object",
                  [object objectForKey:@"title"],
                  [object objectForKey:@"description"],
                  [object objectForKey:@"title"]];

    NSLog(@"%@", result.url);

    return result;
}

Ceci est tiré directement du tutoriel open graph pour la plupart, sauf là où j'ai ajouté la partie fb:explicitly_shared.

Où dois-je ajouter cette information lorsque je publie un message depuis un appareil iOS ? Toute aide est la bienvenue :)

11voto

Lukas Petr Points 355

Vous devez ajouter le paramètre à l action et ce que je peux dire de votre code, c'est qu'il semble que vous essayez de l'ajouter à l'adresse de l'utilisateur. objet ce qui ne fonctionnera évidemment pas. Voici comment j'ai procédé :

id<GSOGTrackActivityAction> action = (id<GSOGTrackActivityAction>)[FBGraphObject graphObject];
action.activity = activityObject;

[(NSMutableDictionary *)action setValue:@"true" forKey:@"fb:explicitly_shared"];

(Notez que GSOGTrackActivityAction est mon protocole personnalisé pour l'accès typé à l'objet action. Et "track" est mon action et "activity" est mon objet (dans l'Open Graph)).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X