使用适用于Mac OS X应用的Google API客户端检索身份验证问题

时间:2015-12-06 14:08:12

标签: objective-c macos google-api-client

我正在使用Mac OS X应用,用户需要访问他们的Google日历。但是,我无法使身份验证工作,并且它对我来说没有任何意义,为什么它不起作用。

Google API通过Cocoapods安装:pod'Google-API-Client / Calendar'

我在NSWindow中有一个NSTabViewController,当用户点击我调用以下内容的按钮时:

   @property (nonatomic, strong)GTMOAuth2WindowController *windowController;
    static NSString *const scope = @"https://www.googleapis.com/auth/calendar";

    - (void)startAuthentication {

     GTMOAuth2Authentication *auth  =  [GTMOAuth2WindowController authForGoogleFromKeychainForName:kKeychainItemName 
clientID:kClientID clientSecret:kClientSecret];

     if ( auth.canAuthorize) {
             return;
     }

     self.windowController = [[GTMOAuth2WindowController alloc] initWithScope:scope
                                                                    clientID:kClientID
                                                                clientSecret:kClientSecret
                                                            keychainItemName:kKeychainItemName
                                                              resourceBundle:nil];
     }

     - (void)windowController:(GTMOAuth2WindowController *)windowController
        finishedWithAuth:(GTMOAuth2Authentication *)auth
                   error:(NSError *)error {}

不知道为什么,但从不调用选择器。从调试我注意到Fetcher启动,kGTMOAuth2UserSignedIn被发布,但它永远不会结束。

为什么这不起作用?

1 个答案:

答案 0 :(得分:0)

与Google代码无关,这是包含viewController的窗口的问题。