Подтвердить что ты не робот

Как открыть страницу Twitter в приложении Twitter из моего приложения iphone?

Страница, которую я хочу открыть, используя приложение Twitter:

https://twitter.com/#!/PAGE

Чтобы открыть приложение Twitter, я использую следующий код:

NSURL *urlApp = [NSURL URLWithString: [NSString stringWithFormat:@"%@", @"twitter://https://twitter.com/#!/PAGE"]];
[[UIApplication sharedApplication] openURL:urlApp];

Но этот код работает не так, как ожидалось, у меня появилось только приложение twitter без страницы, которую я хочу показать.

4b9b3361

Ответ 1

Вы ищете следующий URL:

twitter:///user?screen_name=PAGE

Обратите внимание, что Twitter не установлен на всех устройствах. Вы должны проверить результат метода openURL. Если это не удается, откройте страницу в Safari с регулярным URL.

Ответ 2

Я знаю его довольно поздний ответ на этот вопрос, и я согласен с тем, что ответ Мурата абсолютно правильный. Просто добавьте проверку следующим образом:

NSURL *urlApp = [NSURL URLWithString: [NSString stringWithFormat:@"%@", @"twitter:///user?screen_name=PAGE]];

if ([[UIApplication sharedApplication] canOpenURL:urlApp]){
        [[UIApplication sharedApplication] openURL:urlApp];
    }

Надеюсь, это поможет кому-то. Ура!!:)

Ответ 3

Следующий код открывает страницу Twitter в приложении Twitter, если она уже установлена, в противном случае открывается твиттер на сафари:

NSURL *twitterURL = [NSURL URLWithString:@"twitter://user?screen_name=username"];
if ([[UIApplication sharedApplication] canOpenURL:twitterURL])
    [[UIApplication sharedApplication] openURL:twitterURL];
else
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.twitter.com/username"]];

Не забудьте заменить "имя пользователя" на ваше имя.

Ответ 4

@Alexey: Если вы просто хотите узнать, как запустить твиттер из вашего приложения, выполните следующие действия:

NSURL *urlApp = [NSURL URLWithString: [NSString stringWithFormat:@"%@", @"twitter://"]];
   if ([[UIApplication sharedApplication] canOpenURL:urlApp]){
        [[UIApplication sharedApplication] openURL:urlApp];
   }else{
        UIAlertView *appMissingAlertView = [[UIAlertView alloc] initWithTitle:@"Twitter App Not Installed!" message:@"Please install the Twitter App on your iPhone." delegate:nil cancelButtonTitle:nil otherButtonTitles:@"Ok",nil];
        [appMissingAlertView show];
        [appMissingAlertView release];
    }

Ответ 5

Это полный код, необходимый в Swift. Я использую Swift 4, но я верю, что это то же самое для Swift 3.

let Username =  "YOUR_USERNAME_HERE" 
let appURL = NSURL(string: "twitter:///user?screen_name=\(Username)")!
let webURL = NSURL(string: "https://twitter.com/\(Username)")!
let application = UIApplication.shared
if application.canOpenURL(appURL as URL) {
      application.open(appURL as URL)
    } else {
        // if Twitter app is not installed, open URL inside Safari
        application.open(webURL as URL)
    }

Не забудьте добавить информационные ключи, необходимые для использования canOpenURL: Info Keys Needed