2

Twitterアカウントをに保存しようとしていACAccountStoreます。

私はユーザーを認証していますMPOauth(これは完全に機能し、メッセージを認証して投稿できます)。アクセストークンとアクセストークンシークレットを受け取ったら、アカウントの保存に進みます。

まず、トークンアクセスを分割して、ユーザーIDではなく、トークン自体のみを取得します。その後、これは私のコードです

if ([username length] > 0 && [token length] > 0 && [secret length] > 0) {

    ACAccountStore *accountStore = [[ACAccountStore alloc] init];
    ACAccountType *accountType = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
    ACAccount *account = [[ACAccount alloc] initWithAccountType:accountType];
    ACAccountCredential *credentials = [[ACAccountCredential alloc] initWithOAuthToken:token tokenSecret:secret];

    [account setCredential:credentials];
    [account setUsername:username];

    [accountStore saveAccount:account withCompletionHandler:^(BOOL success, NSError *error) {

        if (success) {

            NSLog(@"the account was saved!");

        } else {

            NSLog(@"the account was NOT saved");
        }

        [accountStore release];
        [account release];
        [credentials release];
    }];
}

しかし、決して機能しません、私はこれを手に入れます

Error Domain=NSURLErrorDomain Code=-1012 "The operation couldn’t be completed. (NSURLErrorDomain error -1012.)"

これは、アカウントを保存する前にiOS5フレームワークによって行われるTwitterに対するデータの認証エラーに対応していることを読みました。

私はすでにこの回答Twitterの投稿を読んだ。

なにが問題ですか?

4

1 に答える 1

0

トークンがOATokenの場合、これを置き換える必要があります

ACAccountCredential *credentials = [[ACAccountCredential alloc] initWithOAuthToken:token tokenSecret:token];

これとともに

ACAccountCredential *outhCredential = [[ACAccountCredential alloc] initWithOAuthToken:token.key tokenSecret:token.secret];

キーとシークレットをそれぞれ1番目と2番目の引数として渡す必要があります。

于 2012-08-24T07:49:03.497 に答える