2

TWTweetComposeViewControllerポップアップを表示せずに、iPhone アプリから直接ツイートを送信したい

また、すべてのフォロワーを取得したいのですが、ios5 の Twitter フレームワークからそれを行う方法はありますか、それとも別の API を使用する必要があります!

別の API を使用する必要がある場合、優れた API を指定できますか? 私がインターネットで見つけたすべてのAPIはとても古いものだったからです。

前もって感謝します

4

3 に答える 3

3

TWRequestiOS 5.0以降を使用している場合、アプリからプログラムでツイートを投稿するために使用できます。ツイートの投稿は非常に簡単で、外部フレームワークなどは必要ありません。

が必要です#import <Twitter/Twitter.h>。iPhone アカウント ストアから Twitter アカウントを取得し (複数のアカウントがあるかどうかを確認できます)、そのアカウントを使用して要求を投稿します。

画像付きのツイートを投稿する方法の例を次に示します。

- (void)shareTwitterImage:(UIImage *)image
{
    ACAccountStore *accountStore = [[ACAccountStore alloc] init];
    ACAccountType *accountType = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];

    [accountStore requestAccessToAccountsWithType:accountType withCompletionHandler:^(BOOL granted, NSError *error)
     {
         if(granted)
         {
             NSArray *accountsArray = [accountStore accountsWithAccountType:accountType];

             if ([accountsArray count] > 0)
             {
                 ACAccount *twitterAccount = [accountsArray objectAtIndex:0];

                 TWRequest *postRequest = [[TWRequest alloc] initWithURL:[NSURL URLWithString:@"https://upload.twitter.com/1/statuses/update_with_media.json"] parameters:[NSDictionary dictionaryWithObject:self.textViewOutlet.text forKey:@"status"] requestMethod:TWRequestMethodPOST];

                 [postRequest addMultiPartData:UIImagePNGRepresentation(image) withName:@"media" type:@"multipart/png"];
                 [postRequest setAccount:twitterAccount];

                 [postRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
                  {
                      //show status after done
                      NSString *output = [NSString stringWithFormat:@"HTTP response status: %i", [urlResponse statusCode]];
                      NSLog(@"Twiter post status : %@", output);
                  }];
             }
         }
     }];
}
于 2013-01-07T08:19:54.420 に答える
1

かなりの数のオプションがあります:

iOS 6 には Appleフレームワークがあり、Facebook や Sina Weibo だけでなく、Twitter にも投稿Socialできます。ドキュメントはこちらです。iOS 6 を実行しているデバイスは、下位互換性を実行する必要があります。そのため、それは避けてください。SLComposeViewControllerTWTweetComposeViewController

ShareKitもありますが、面倒で肥大化するため、一般的にはお勧めしません。最後にiOS の Oauth ライブラリがあります... コンシューマ キーとシークレット キーを作成します。TWRequest で Twitter API を呼び出すこともできます

それは私が考えることができるすべてです。

ローハン。

于 2013-01-07T08:11:58.340 に答える