2012-01-25 3 views
0

次のコードをFacebookアカウントにログインし、ユーザーのFacebookの壁にコメントを投稿しました。それは正常に動作し、Facebookの壁に下記のすべてを掲示していますが、それは例外と終了アプリケーションの後に異常に投げます。私は頭をたくさん傷つけましたが、間違ったことは何も見つかりませんでした。誰でも私のコードで何が間違っているか教えてください。参考までにこのコードを組み合わせたlink1link2ありがとう!iPhone:Facebookのストリームを公開中に認識できないセレクタがインスタンス例外に送信されました

例外:

-[NSConcreteMutableData objectForKey:]: unrecognized selector sent to instance 0x34a560 
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSConcreteMutableData objectForKey:]: unrecognized selector sent to instance 0x34a560' 

Facebookのコードへのログイン:壁に

- (void)login { 
    NSLog(@"Logging into Facebook..."); 
    UniversalAppAppDelegate *delegate = (UniversalAppAppDelegate *) [[UIApplication sharedApplication] delegate]; 
    NSArray* requiredPermissions = [NSArray arrayWithObjects:@"read_stream", @"publish_stream", @"offline_access",nil]; 

    if (![[delegate facebook] isSessionValid]) { 
     [delegate facebook].sessionDelegate = self; 
     [[delegate facebook] authorize:requiredPermissions]; 
    } 
}  

投稿:

- (void)postCommentToFacebookWall:(NSString*)comment 
{ 
    UniversalAppAppDelegate *delegate = (UniversalAppAppDelegate *) [[UIApplication sharedApplication] delegate]; 

    NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
           kAppId, @"api_key", 
           @"This is test message from my iPhone App",@"message", 
           nil]; 

    [[delegate facebook] requestWithMethodName:@"stream.publish" 
            andParams:params 
           andHttpMethod:@"POST" 
           andDelegate:self]; 
} 
+0

このコードで問題は見つかりませんでした。しかし、いくつかのNSMutableDataオブジェクトがNSDictionaryの代わりに使用されるように見えます。 NSDataには「objectForKey:」メソッドがありません。これは別の場所で発生する可能性があります。 – SVGreg

+0

@SVGreg:実際には他の場所はありません!私はapp-delegateからcomment引数を持つpostcommentメソッドを呼び出します。私は自分のデータベースにコメントを送る。私がFacebookのコールにコメントを投稿した場合、すべて正常に機能します! Facebookにコメントを投稿すると問題になります。 – applefreak

+1

コールバックメソッドを実装しましたか?あなたは "requestWithMethodName:"の代理人として自分自身を設定します。 – SVGreg

答えて

0

私はこのコードで何か問題を発見していませんでした。しかし、いくつかのNSMutableDataオブジェクトがNSDictionaryの代わりに使用されるように見えます。 NSDataには「objectForKey:」メソッドがありません。これは別の場所で発生する可能性があります。

コールバックメソッドを実装しましたか?あなたは "requestWithMethodName:"の代理人として自分自身を設定します。

1

私は、結果探していたことを実現するまで私はこの問題を持っていた:このメソッドは、取得

結果(ID):

  • (無効)要求:(FBRequest *)リクエストdidLoadを投稿およびログイン/承認時に呼び出されます。私の承認の一環として、私はオブジェクト/キーを検索していましたが、壁に投稿するとNSMutableDataとして返され、NSMUtableDictでは返されません。ここでキーを検索していないことを確認してください。

関連する問題