Erreur d'intégration de la connection Google Plus iOS

Salut, j'essaie d'intégrer google + login sur mon application iOS. J'ai suivi les instructions de ce lien .

Les exemples fonctionnent bien, mais quand j'ai essayé de mettre en œuvre sur mon application, il obtient ce

errorTerminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[NSBundle gpp_registerFonts]: unrecognized selector sent to class 0x16af620'

J'ai ajouté les frameworks suivants Image Any help

Code: dans viewdidload de mon sharepoint vue

 GPPSignIn *signIn = [GPPSignIn sharedInstance]; signIn.shouldFetchGooglePlusUser = YES; signIn.shouldFetchGoogleUserEmail = YES; // Uncomment to get the user's email // You previously set kClientId in the "Initialize the Google+ client" step signIn.clientID = kClientId; signIn.scopes = [NSArray arrayWithObjects: kGTLAuthScopePlusLogin, // defined in GTLPlusConstants.h nil]; // Optional: declare signIn.actions, see "app activities" signIn.delegate = self; 

Après cela, j'ajoute ces fonctions

 - (BOOL)application: (UIApplication *)application openURL: (NSURL *)url sourceApplication: (NSSsortingng *)sourceApplication annotation: (id)annotation { return [GPPURLHandler handleURL:url sourceApplication:sourceApplication annotation:annotation]; } - (void)finishedWithAuth: (GTMOAuth2Authentication *)auth error: (NSError *) error { NSLog(@"Received error %@ and auth object %@",error, auth); } 

Et j'ajoute un button dans ma vue de la class GPPSignInButton.

Salut le problème est avec le -ObjC. Bien que j'ai ajouté le -ObjC plus tôt mais je ne sais pas pourquoi il ne fonctionnait pas mais quand je supprime et ajoute encore il commence à travailler. Peut-être que je l'ai copié-collé plus tôt pour qu'il y ait de l'espace ou quelque chose.

Dans le délégué de l'application, vous devez définir l'identifiant du client et une fois que vous avez défini ce paramètre, vous n'avez plus besoin de le définir dans ViewController

avez-vous ajouté GooglePlus.bundle s'il n'est pas ajouté, ajoutez-le à votre projet

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [GPPSignIn sharedInstance].clientID = kGoogleplusClientID; [GPPDeepLink setDelegate:self]; ...... } - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSSsortingng *)sourceApplication annotation:(id)annotation { return [GPPURLHandler handleURL:url sourceApplication:sourceApplication annotation:annotation]; } 

Suivant dans votre myView vous pouvez faire quelque chose comme ça

  //in .h file @class GPPSignInButton; @interface ViewController : UIViewController @property (retain, nonatomic) IBOutlet GPPSignInButton *signInButton; //sign in button ..... //in .m file - (void)viewDidLoad { [GPPSignInButton class]; //for sign in button u need to put a view and set its calss name as `GPPSignInButton` and connect to IBOutlet of ur signInButton [GPPSignIn sharedInstance].shouldFetchGoogleUserEmail = YES; [GPPSignIn sharedInstance].shouldFetchGooglePlusUser = YES; GPPSignIn *signIn = [GPPSignIn sharedInstance]; signIn.delegate = self; ........ //if u are settings are all correct u will logged in successfully } 

Je pense que vous utilisez un button personnalisé avec une connection IBOutlet. Supprimez la connection de sortie dans Storyboard et réessayez. Ça va marcher.