2012-03-16 14 views
6

Na ekranie Informacje o użytkowniku chciałbym umożliwić użytkownikowi łatwe "Podążanie" za moim kontem na Twitterze.Android Czy chcesz śledzić użytkownika na Twitterze?

Miałem nadzieję, że istniejące aplikacje na Twitterze wsparłyby jakąś intencję. Wolałbym nie używać sugestii here, ponieważ wymaga to uwierzytelnienia, AFAICT.

Jeśli użytkownik już zainstalował na przykład oficjalną aplikację na Twitterze, w razie potrzeby lepiej jest wykonać uwierzytelnianie w tej aplikacji.

Próbowałem już skontaktować się z osobami za oficjalną aplikacją na Twitterze, ale nie otrzymałem odpowiedzi.

Odpowiedz

5

To stare pytanie, ale uważam, że teraz jest lepszy sposób. Użyj Web Intent.

https://dev.twitter.com/web/follow-button/web-intent

Zasadniczo wystarczy użyć ACTION_VIEW z adresem URL: https://twitter.com/intent/follow?user_id=<theuserid>

+1

Idealne, dzięki! To poprawnie wykorzystuje aplikację Twitter, jeśli jest zainstalowana, a przeglądarka, jeśli nie, więc zaletą jest, że ** już nie musimy robić czegoś takiego: 'try { \t startActivity (new Intent (Intent.ACTION_VIEW, Uri.parse (" twitter: // user? screen_name = "+ twitterName))); } } catch (ActivityNotFoundException e) { \t startActivity (new Intent (Intent.ACTION_VIEW, Uri.parse ("https://twitter.com/#!/" + twitterName))); } ' –

+0

Na marginesie, powiedziałbym, że https://twitter.com/intent/follow?screen_name= jest wyraźniejszym przykładem, aby uniknąć sytuacji, w których ludzie myślący" theuserid "są uchwytami Twittera. –

+1

@MarkCarter screen_name JEST jaśniejszy, ale dokumentacja stwierdza, że ​​nazwy ekranów mogą się zmieniać, gdy identyfikator użytkownika nie może. Jeśli to możliwe, użyłbym user_id, aby się upewnić, że nigdy się nie zepsuje. – BoredAndroidDeveloper

1

Jeśli użytkownik zainstalował oficjalną aplikację Twitter i jest zalogowany, nie sądzę, aby twitter4j ponownie poprosił o uwierzytelnienie. Już wcześniej pracował z twitter4j i Facebook API i żaden z nich poprosił o uwierzytelnianiu jeśli użytkownik jest już zalogowany ...

+0

Dzięki, będę na nią patrzeć. Byłoby miło, gdyby istniał tylko prosty zamiar. Przynajmniej pozwoliłoby to uniknąć konieczności używania API innej firmy. –

+0

prawda, ale dlaczego Twitter pozwala każdemu na interakcję z ich systemem bez uwierzytelniania? Nawet jeśli chcesz tylko podążać za kimś, musisz nadal być ważnym użytkownikiem ... to jest !! – aProgrammer

+0

Ale jeśli aplikacja Twitter uwierzytelnia użytkownika, to musiałaby jakoś odsłonić to (przez odbiornik, filtr zamiarów itp.) Dla innych aplikacji, aby to wykorzystać, nie? –

5

Intent Właśnie skończył przy użyciu standardu opartego na http:

Działanie:

android.intent.action.VIEW 

danych:

http://twitter.com/mytwitterusername 

użytkownik może wtedy zdecydować, czy otworzyć woli w oficjalnej aplikacji Twittera (lub cokolwiek) i łatwo śledzić mytwitterusern ame stamtąd.

+0

ładne i łatwe rozwiązanie –

+0

Czy możesz udostępnić fragment kodu? –

+1

'Intent intent = new Intent (Intent.ACTION_VIEW); \t intent.setData (Uri.parse ("http://twitter.com/mytwitterusername")); \t MyActivity.this.startActivity (intent); ' –

Powiązane problemy