2012-04-06 5 views
2

저는 현재 GData 프레임 워크를 구현하여 picasa에 인증하고 게시합니다. 지금까지는 작업 프레임 워크 구성이 있습니다. 이를 통해 나를 푸시하고 인증 할 수 있으며 Google 인증을 시도 할 수 있습니다. 응용 프로그램 반환 다음과 같은 인증 나는 다음과 같은 오류와 충돌을받을 때 내가있을 것 같다 유일한 문제는OAuth2를 사용하여 iPhone 용 Google에 로그인 할 때 오류가 발생했습니다.

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[NSInvocation invocationWithMethodSignature:]: method signature argument cannot be nil' 

* 먼저 던져 호출 스택 : (0x281c022 0x43c3cd6 0x2781a52 0x1d134b 0x27824ed 0x2782407 0x1ce0fa 0x1cdf0b 0x1cdebb 0x27824ed 0x2782407 0x22185e 0x221670 0x22270a 0x1926a49 0x1924e84 0x1925ea7 0x1924e3f 0x1924fc5 0x1869f5a 0xca3a39 0xd70596 0xc9a120 0xd70117 0xc99fbf 0x27f094f 0x2753b43 0x2753424 0x2752d84 0x2752c9b 0x29ae7d8 0x29ae88a 0xf23626 0x1c332d 0x2995)

다음과 같이

내 인증 코드는

  NSString *clientID = @"blogityblaablaa"; 
     NSString *clientSecret = @"somecrazycrap"; 

     auth = [GTMOAuth2ViewControllerTouch authForGoogleFromKeychainForName:kKeychainItemName 
                    clientID:clientID 
                   clientSecret:clientSecret]; 
     [[self photoservice] setAuthorizer:auth]; 

     NSString *scope = [GDataServiceGooglePhotos authorizationScope]; 

     SEL finishedSel = @selector(viewController:finishedWithAuth:error:); 

     GTMOAuth2ViewControllerTouch *viewController; 
     viewController = [GTMOAuth2ViewControllerTouch controllerWithScope:scope 
                    clientID:clientID 
                   clientSecret:clientSecret 
                  keychainItemName:kKeychainItemName 
                    delegate:self 
                  finishedSelector:finishedSel]; 

     NSString *html = @"<html><body bgcolor=silver><div align=center>Loading sign-in page...</div></body></html>"; 
     viewController.initialHTMLString = html; 

     [[del navigationController] pushViewController:viewController animated:NO]; 

어쨌든 도와주세요. 고마워요! - Jim

업데이트 :이 문제는 선택기 "finishedSelector : finishedSel"의 구성 오류로 인해 발생했습니다. 응용 프로그램이 반환 할 때 선택기를 찾을 수 없으므로이 충돌이 발생할 수 있습니다. 위의 인증 코드는 잘 작동하지만 GData 인증을 위해 oAuth에 대한 도움이 필요한 사람들에게 유용하기를 바랍니다. 감사!

답변

0

선언 된 선택기 finishedSet이 올바른지 확인하십시오. 올바르게 viewController를 선언합니까? finishedWithAuth : error : 현재 개체에 대해? 이 오류의 원인이었다

[[self navigationController] pushViewController:viewController animated:NO];

+0

이와

[[del navigationController] pushViewController:viewController animated:NO];

:

SEL finishedSel = @selector(viewController:finishedWithAuth:error:); 
mejim707

0

이 라인을 교체합니다. 고마워요!
관련 문제