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 :)
Facebook SDK 4.0 presentó "App Invites for iOS". Compruébelo: https://developers.facebook.com/docs/app-invites/ios
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
import FBSDKShareKit
import FBSDKCoreKit
import FBSDKLoginKit
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)") }
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);
}
}
}
}];