2012-04-06 8 views
2

私は現在、Giganaを認証してpicasaに投稿しています。これまでのところ私はフレームワークの設定をしています。これにより私はプッシュして認証したり、Googleの認証を試みたりすることができます。アプリに戻り、次の認証は、私は次のエラーでクラッシュを受信したとき、私は持っているように見える唯一の問題はあるOAuth2を使用してGoogle for iPhoneにログインする際にエラーが発生しました。

*** 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]; 

とにかくお手伝いをしてください。どうもありがとうございました! - ジム

更新:これは、セレクタ "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

は、この行を置き換えます。どうもありがとうございました!
関連する問題