2016-06-08 9 views
2

Ich habe google signIn in meiner App implementiert.GIDSignInDelegate-Methoden, die nicht in iOS 8.4 aufrufen

Es funktioniert gut in iOS 9+. Aber es schafft Problem in 8+ Version.

Ich habe initialisiert Google melden Sie sich an, wie:

[GIDSignIn sharedInstance].uiDelegate = self; 
    [GIDSignIn sharedInstance].delegate = self; 

In meinem button Klick folgenden Code ist ihr:

- (void)userDidTapSignInButton:(UIButton*)sender { 

     [[GIDSignIn sharedInstance] signIn]; 

    } 

Nur diese Google Delegate aufgerufen wird:

- (void)signInWillDispatch:(GIDSignIn *)signIn error:(NSError *)error { 

     NSLog(@"Show Sign In Screen"); 

    } 

Nach Diese Google Sign auf Seite öffnet sich. Nach Eingabe meiner Benutzer-Login-Daten, wenn ich bestätige und Fertig, dann werde ich zurück zu meiner App weitergeleitet. Danach passiert nichts.

Weder Erfolg nicht fehlgeschlagen Delegiert wird aufgerufen.

- (void)signIn:(GIDSignIn *)signIn 
      didSignInForUser:(GIDGoogleUser *)user 
withError:(NSError *)error { 
     NSLog(@"Google Sign IN SUccess"); 
    } 

Failure Delegieren:

- (void)signIn:(GIDSignIn *)signIn 
    didDisconnectWithUser:(GIDGoogleUser *)user 
withError:(NSError *)error { 
    NSLog(@"google sign in fail with error"); 
    } 

Wenn ich meine App in iOS 9.2 oder 9.3 es gut jeden Delegierten arbeitet laufen aufgerufen wird. Aber nicht in iOS 8.4.8.3, ...

Ich bin nicht in der Lage, die Ursache dahinter herauszufinden.

Auch ich bekomme keine Protokolle oder Fehlermeldung in der Konsole.

Antwort

1

Sie müssen die ios 9.0-Version und die ios 8.0-Version der offenen URL-Funktion implementieren.

@available(iOS 8.0,*) 
func application(application: UIApplication, 
       openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool { 
    print("sign in with annotation") 
    return GIDSignIn.sharedInstance().handleURL(url, 
               sourceApplication: sourceApplication, 
               annotation: annotation) 
} 
@available(iOS 9.0, *) 
func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool { 
    print("sign in with options") 
    return GIDSignIn.sharedInstance().handleURL(url, 
               sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as! String?, 
               annotation: options[UIApplicationOpenURLOptionsAnnotationKey]) 
} 
+0

Hallo, willkommen zu Stapelüberlauf. Versuchen Sie, beim Verfassen einer Antwort informativer zu sein: Erläutern Sie den Fehler, den Sie gefunden haben, und die Lösung, die Sie gepostet haben: Siehe auch Antworten: http://stackoverflow.com/help/how-to-answer –

+0

Hallo RahulMishra, have Sie haben Google Anmeldung Integration durch Kakao pods oder iOS SDK getan? – puja

+0

@puja ja ich habe es getan. Stehen Sie immer noch vor Problemen? – Dalvik