unity react fbsdkloginkit fbsdkcorekit iphone objective-c facebook facebook-graph-api facebook-ios-sdk

iphone - react - fbsdkloginkit



Cómo invitar amigos a mi aplicación a través de Facebook iOS SDK y Graph API (8)

Asegúrate de que tu ID de aplicación de Facebook sea la misma tanto en la página de desarrollador como en xcode, activa el modo de espacio aislado y debe rellenar la URL de lienzo [debajo de la aplicación en la categoría de Facebook] en la página de desarrollador.

NSString *facebookID = @"Your friend facebook id";; NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObject:facebookID forKey:@"to"]; NSString *message = @"SOME_MESSAGE"; NSString *title = @"TITLE"; [FBWebDialogs presentRequestsDialogModallyWithSession:nil message:message title:title parameters:params handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) { if (error) { // Case A: Error launching the dialog or sending request. NSLog(@"Error sending request."); } else { if (result == FBWebDialogResultDialogNotCompleted) { // Case B: User clicked the "x" icon NSLog(@"User canceled request."); } else { NSLog(@"Request Sent. %@", params); } }}];

Estoy escribiendo una aplicación para iPhone.

Quiero darle al usuario la opción de invitar a amigos a comenzar a usar mi aplicación a través de Facebook.

Más específicamente, quiero presentar un diálogo que permita al usuario seleccionar amigos específicos para invitar.

¿Cómo puedo hacer esto?

Gracias.


Es simple, puede escribir el siguiente código para el mensaje personalizado y también puede seleccionar fácilmente el amigo a quien se le enviará la solicitud, es un método directo y poderoso.

[FBWebDialogs presentRequestsDialogModallyWithSession:nil message:NSLocalizedString(@"FBinviteMessage", nil) title:nil parameters:nil handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) {} ];

Simplemente agregue esta seis líneas de código a su método de acción de botón, luego el resto se realizará mediante el marco IOS & FaceBook incorporado :)



Hoy, con la 3.11 version del SDK de Facebook, debe usar esto para enviar una solicitud de aplicación a un amigo específico.

NSString *facebookID = @"YOUR_FRIEND_FACEBOOK_ID" NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObject:facebookID forKey:@"to"]; NSString *message = @"SOME_MESSAGE"; NSString *title = @"TITLE"; FBSession *facebookSession = [PFFacebookUtils session]; //You may changed this if you are not using parse.com [FBWebDialogs presentRequestsDialogModallyWithSession:facebookSession message:message title:title parameters:params handler: ^(FBWebDialogResult result, NSURL *resultURL, NSError *error) { }];


Para enviar invitaciones a la aplicación de Facebook, primero debe agregar detalles de su aplicación aquí. https://developers.facebook.com/quickstarts/?platform=app-links-host

En Swift 2.2, XCode 7.3 y FBSDK 4.1

  1. import FBSDKShareKit import FBSDKCoreKit import FBSDKLoginKit

  2. Agregue FBSDKAppInviteDialogDelegate con su clase ViewController.

    func appInviteDialog(appInviteDialog: FBSDKAppInviteDialog!, didCompleteWithResults results: [NSObject : AnyObject]!) { print("Initiation sent") } func appInviteDialog(appInviteDialog: FBSDKAppInviteDialog!, didFailWithError error: NSError!) { print("/(error)") }

  3. let content = FBSDKAppInviteContent(); content.appLinkURL = NSURL(string: "fb link that you get in above developers facebook url"); //"https:// fb.me/1775107252721102" in my case FBSDKAppInviteDialog.showFromViewController(self, withContent: content, delegate: self);


Puede usar el cuadro de diálogo compartir para compartir el enlace para descargar la aplicación al muro del usuario, o escribir elementos de interfaz de usuario personalizados y usar llamadas de API para crear su propio módulo de uso compartido. Intenta usar un SDK de iOS de Facebook para simplificar el proceso o tendrás mucho trabajo por hacer.


Puedes hacer algo como esto:

Facebook* facebook = [[Facebook alloc] initWithAppId:@"YOUR_FACEBOOK_APP_ID" andDelegate:self]; NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: @"My Title", @"title", @"Come check out my app.", @"message", @"FACEBOOK_USER_ID", @"to", nil]; [facebook dialog:@"apprequests" andParams:params andDelegate:self];

Puede ver la lista de posibles parámetros en esta página (desplazarse hacia abajo): http://developers.facebook.com/docs/reference/dialogs/requests/


[FBWebDialogs presentRequestsDialogModallyWithSession:nil message:@"YOUR_MESSAGE_HERE" title:nil parameters:nil handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) { if (error) { // Error launching the dialog or sending the request. NSLog(@"Error sending request."); } else { if (result == FBWebDialogResultDialogNotCompleted) { // User clicked the "x" icon NSLog(@"User canceled request."); } else { // Handle the send request callback NSDictionary *urlParams = [self parseURLParams:[resultURL query]]; if (![urlParams valueForKey:@"request"]) { // User clicked the Cancel button NSLog(@"User canceled request."); } else { // User clicked the Send button NSString *requestID = [urlParams valueForKey:@"request"]; NSLog(@"Request ID: %@", requestID); } } } }];