2015-10-28 10 views
5

मेरे AppDelegate में Googles साइन इन करें का उपयोग करते हुए मैंGIDSignIn आईओएस 9

func application(application: UIApplication, 
    openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool { 
    return GIDSignIn.sharedInstance().handleURL(url, 
     sourceApplication: sourceApplication, 
     annotation: annotation) 
} 

है लेकिन उस समारोह कैसे वापस जाने के लिए

GIDSignIn.sharedInstance के लिए

application:openURL:options: 

आईओएस 9 के रूप में हटा दिया गया है() .handleURL (यूआरएल, स्रोत आवेदन: स्रोत आवेदन, एनोटेशन: एनोटेशन)

आईओएस 9 के लिए नए फ़ंक्शन का उपयोग करना?

उत्तर

12

उपयोग करें:

//Google Login 
@available(iOS 9.0, *) 
func application(application: UIApplication, 
    openURL url: NSURL, options: [String: AnyObject]) -> Bool { 
     return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: options[UIApplicationOpenURLOptionsSourceApplicationKey] as! String, annotation: options[UIApplicationOpenURLOptionsAnnotationKey]) 
} 

//for IOS 8  
@available(iOS, introduced=8.0, deprecated=9.0) 
func application(application: UIApplication, 
    openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool { 

    return GIDSignIn.sharedInstance().handleURL(url, sourceApplication: sourceApplication!, annotation: annotation) 
} 
4

बस संदर्भ के लिए, ऑब्जेक्टिव-सी का उपयोग कर अगर, विधि दिया गया है:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { 
    return [[GIDSignIn sharedInstance] handleURL:url 
           sourceApplication:sourceApplication 
             annotation:annotation]; 
} 

आईओएस 9 पर है, यह भी नए लागू करने के लिए सिफारिश की की जाएगी प्रारूप:

- (BOOL)application:(UIApplication *)application openURL:(nonnull NSURL *)url options:(nonnull NSDictionary<NSString *,id> *)options { 
    return [[GIDSignIn sharedInstance] handleURL:url 
           sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey] 
             annotation:options[UIApplicationOpenURLOptionsAnnotationKey]]; 
}