Можно ли проверить, есть ли у пользователя учетная запись твиттера во встроенном твиттер-приложении iOS 5? - PullRequest
1 голос
/ 23 ноября 2011

iOS 5 имеет глубокую интеграцию с твиттером.Как я могу проверить, есть ли у пользователя учетная запись во встроенном твиттер-приложении (имеется в виду, что он его использует), а затем выполнить UIApplication openURL:, чтобы вызвать пользователя или предварительно составить твит?

Одной из новых функций для разработчиков в iOS 5 SDK является поддержка API Twitter.Apple упростила разработчикам добавление поддержки Twitter в свои приложения и позволяет пользователям легко контролировать, имеет ли приложение доступ к публикации в своей учетной записи Twitter.

Согласно этосайт возможно.Как называется этот Twitter Framework?

Ответы [ 3 ]

12 голосов
/ 24 ноября 2011

Попробуйте это:

- (void)tweetButtonPressed:(id)sender
{
     Class tweetComposer = NSClassFromString(@"TWTweetComposeViewController");

     if( tweetComposer != nil ) {   

         if( [TWTweetComposeViewController canSendTweet] ) {
            TWTweetComposeViewController *tweetViewController = [[TWTweetComposeViewController alloc] init];

            [tweetViewController setInitialText:@"This is a test."];  // set your initial text

            tweetViewController.completionHandler = ^(TWTweetComposeViewControllerResult result) {
                if( result == TWTweetComposeViewControllerResultDone ) 
                {
                    // user is done with composing
                } 
                else if( result == TWTweetComposeViewControllerResultCancelled ) 
                {
                    // user has cancelled composing
                }
                [self dismissViewControllerAnimated:YES completion:nil];
            };

            [self presentViewController:tweetViewController animated:YES completion:nil];
        } 
        else {
             // The user has no account setup
        }
    }   
    else {
        // no Twitter integration
    }
}
4 голосов
/ 15 декабря 2011

По первой части вашего вопроса ...

ACAccountStore *accountStore = [[[ACAccountStore alloc] init] autorelease];
ACAccountType *twitterAccountType = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
NSArray *twitterAccounts = [accountStore accountsWithAccountType:twitterAccountType];

Вот как мы это делаем в DETweetComposeViewController .

3 голосов
/ 24 ноября 2011

Вы можете попробовать что-то вроде:

BOOL didOpenTwitterApp = [UIApplication openURL:[NSURL URLWithString:@"twitter:///user?screen_name=senior"]];

Это вернет false, если приложение не сможет открыть официальное приложение Twitter.

Если вы просто хотите создать новый твит,используйте собственный API

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...