И так нам понадобиться рабочий Twitter аккаунт (если его у вас нет, зарегистрируйтесь вот ). Далее нам потребуется зарегистрировать наше тестовое приложение для взаимодействия с Twitter"ом. И так идем вот сюда
Теперь заполняем нужные поля, важно нам только следующее, тип приложения(Application Type) - Browser, Default Access type - Read & Write. Остальное заполняем произвольным образом, но помня о формате вводимых данных (не пытаемся ввести в URL & callback URL что-то по типу &*^&JKLLKL:, вводите все как следует).
Как только заполнили все поля, ввели капчу - увидим следующий текст.
Consumer key
Consumer secret
************************ (набор символов)
Request token URL
api.twitter.com/oauth/request_token
Access token URL
api.twitter.com/oauth/access_token
Authorize URL
api.twitter.com/oauth/authorize
Registered OAuth Callback URL
smth.com
Да, этот callback в нашем приложении мы использовать не будем, там мы поступим немного по-другому а определим свой собственный callback.
И так теперь у нас есть соотв. библиотеки.
В итоге набросаем небольшой план, как будет выглядеть наше приложение. Для простоты примера будет лишь 1 Activity.
CONSUMER_KEY - уникальный ключ для нашего приложения, получаем как только зарегистрировали наше приложение (что-то наподобие логина)
CONSUMER_SECRET - секретный ключ для нашего приложения (что-то наподобие пароля для «логина»)
REQUEST_URL - нужен для получения request token. Часть OAuth. Получаем сразу после регистрации.
AUTHORIZE_URL - URL необходимый для получения доступа к твиттеру. Часть OAuth. Получаем сразу после регистрации.
ACCESS_URL - для получения access token. Часть OAuth. Получаем сразу после регистрации.
CALLBACK SCHEME ункальный индетификатор который мы используем, как callback для получения access token. Вобще говоря выбор схемы ничем не ограничивается. Для примеры будем использовать x-sample-oauth-twitter here.
CALLBACK_URL - собственно наш callback с помощью которого мы получив ответ, на что авторизация прошла успешно, можем посылать нужные нам запросы с помощью access token.
Tweet.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (TwitterUtils.isAuthenticated(prefs)) {
sendTweet();
} else {
Intent i = new Intent(getApplicationContext(), PrepareRequestTokenActivity.class);
i.putExtra("tweet_msg",getTweetMsg());
startActivity(i);
}
}
});
Здесь все просто, наша кнопка просто проверяет залогинен ли пользователь, если все ок, то посылаем наше сообщение, если нет то предлагает нам залогиниться в браузере. Для этого используем PrepareRequestTokenActivity. Процесс логина чуть позже.
PrepareRequestTokenActivity - Устанавливает OAuth пользоветеля и поставщика (Signpost library)и старутет асинхронный OAuthRequestTokenTask. Так же содержит callback, когда мы уже прошли аутенфикацию для получения access token.
OAuthRequestTokenTask - отвечает за получение request token, и вызов браузера, в котором мы собственно и проходим аутенфикацию.
RetrieveAccessTokenTask - внутренний класс PrepareRequestTokenActivity. Вызывается методомon NewIntent вунтри PrepareRequestTokenActivity. Хранит наши полученные token"ы после авторизации.
PrepareRequestTokenActivity и вызов асинхронного OAuthRequestTokenTask
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
try {
this.consumer = new CommonsHttpOAuthConsumer(Constants.CONSUMER_KEY, Constants.CONSUMER_SECRET);
this.provider = new CommonsHttpOAuthProvider(Constants.REQUEST_URL,Constants.ACCESS_URL,Constants.AUTHORIZE_URL);
} catch (Exception e) {
Log.e(TAG, "Error creating consumer / provider",e);
}
Log.i(TAG, "Starting task to retrieve request token.");
new OAuthRequestTokenTask(this,consumer,provider).execute();
}
Здесь мы и получаем наш callback URL, чтобы вернуть управление приложению (x-oauthflow-twitter://callback).
@Override
protected Void doInBackground(Void... params) {
try {
Log.i(TAG, "Retrieving request token from Google servers");
final String url = provider.retrieveRequestToken(consumer, Constants.OAUTH_CALLBACK_URL);
Log.i(TAG, "Popping a browser with the authorize URL: " + url);
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)).setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_FROM_BACKGROUND);
context.startActivity(intent);
} catch (Exception e) {
Log.e(TAG, "Error during OAUth retrieve request token", e);
}
return null;
}
Продолжаем работу. Теперь нам надо получить access token для доступа к нашему микроблогу, производим это через RetrieveAccessTokenTask. Вызывается который уже упомянутым выше методом onNewIntent.
@Override
public void onNewIntent(Intent intent) {
super.onNewIntent(intent);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
final Uri uri = intent.getData();
if (uri != null && uri.getScheme().equals(Constants.OAUTH_CALLBACK_SCHEME)) {
Log.i(TAG, "Callback received: " + uri);
Log.i(TAG, "Retrieving Access Token");
new RetrieveAccessTokenTask(this,consumer,provider,prefs).execute(uri);
finish();
}
}
Теперь когда все на месте, надо учесть что нужно сохранить нашу сессию, т.е. если даже мы перезапустили приложение нам не надо заново проходить авторизацию, для этого напишем функцию которая хранит все наши значения в фоне.
@Override
protected Void doInBackground(Uri...params) {
final Uri uri = params;
final String oauth_verifier = uri.getQueryParameter(OAuth.OAUTH_VERIFIER);
try {
provider.retrieveAccessToken(consumer, oauth_verifier);
final Editor edit = prefs.edit();
edit.putString(OAuth.OAUTH_TOKEN, consumer.getToken());
edit.putString(OAuth.OAUTH_TOKEN_SECRET, consumer.getTokenSecret());
edit.commit();
String token = prefs.getString(OAuth.OAUTH_TOKEN, "");
String secret = prefs.getString(OAuth.OAUTH_TOKEN_SECRET, "");
consumer.setTokenWithSecret(token, secret);
context.startActivity(new Intent(context,AndroidTwitterSample.class));
executeAfterAccessTokenRetrieval();
Log.i(TAG, "OAuth - Access Token Retrieved");
} catch (Exception e) {
Log.e(TAG, "OAuth - Access Token Retrieval Error", e);
}
return null;
}
Метод executeAfterAccessTokenRetrieval неспоредственно извлекает наше сообщение и проводит его по процедуре аутенфикации с помощью OAuth.
private void executeAfterAccessTokenRetrieval() {
String msg = getIntent().getExtras().getString("tweet_msg");
try {
TwitterUtils.sendTweet(prefs, msg);
} catch (Exception e) {
Log.e(TAG, "OAuth - Error sending to Twitter", e);
}
}
Ну и не забудем оповестить пользователя о успешном выполнении нашей задачи. напишем простенький toast для этого.
private final Handler mTwitterHandler = new Handler();
final Runnable mUpdateTwitterNotification = new Runnable() {
public void run() {
Toast.makeText(getBaseContext(), "Tweet sent !", Toast.LENGTH_LONG).show();
}
};
Само сообщение посылается с помощью методов библиотеки Twitter4J.
public static void sendTweet(SharedPreferences prefs,String msg) throws Exception {
String token = prefs.getString(OAuth.OAUTH_TOKEN, "");
String secret = prefs.getString(OAuth.OAUTH_TOKEN_SECRET, "");
AccessToken a = new AccessToken(token,secret);
Twitter twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer(Constants.CONSUMER_KEY, Constants.CONSUMER_SECRET);
twitter.setOAuthAccessToken(a);
twitter.updateStatus(msg);
}
Вот, что получилось у меня в итоге:
Перевод туториала.
Многие начинающие пользователи интересуются, зачем нужен "Твиттер". Социальные сети по всему миру развиваются очень быстро. Буквально за несколько лет в интернете появилось большое количество разнообразных площадок. У каждой есть свои плюсы и минусы. Некоторые предназначены для обычного общения, какие-то - преимущественно для обмена текстовой информацией. А что можно сказать о странице "Твиттер"? Зачем она нужна пользователям?
О какой странице идет речь? Дело все в том, что Twitter - поколения. Она завоевала сердца многих пользователей. Собой представляет несколько нестандартную "социалку", которая позволяет отправлять небольшие текстовые сообщения, SMS, фотографии по интернету.
Вообще слово twitt в переводе с английского языка значит "болтать" или "чирикать". Основным преимуществом (или особенностью) сайта является то, что вся информация на странице пользователя находится в открытом доступе. Зачем нужен "Твиттер"? Чтобы вести свой микроблог и обмениваться короткими сообщениями!
У каждой социальной сети есть свою преимущества и недостатки. Что выделяет изучаемый сайт от всех остальных? Дело все в том, что он не похож на привычные социальные сети. Зачем нужен "Твиттер" и как им пользоваться? Чтобы разобраться в этом, для начала нужно решить, насколько предложенный ресурс хороший. Судить об этой характеристике помогут отличительные черты "социалки".
Среди них на данный момент выделяют:
Пожалуй, это все основные плюсы, которые только можно выделить. Что еще важно знать о данной социальной сети? Как ею пользоваться?
Зачем нужен "Твиттер"? Чтобы общаться! Существуют некоторые правила, позволяющие понять принцип опубликования так называемых "твитов". На самом деле все очень просто.
Пользователь первым делом должен зарегистрироваться (о принципах регистрации немного позже). После этого у него появится свой аккаунт. Заполнение профиля занимает несколько минут. Далее человек может в любой момент авторизоваться в предложенной социальной сети, а затем оставить короткое сообщение в своем микроблоге.
Следует помнить, что люди могут писать разнообразные посты. Не обязательно ограничиваться только словами. Дополнительно в "твиты" вставляют:
Соответственно, можно сделать "Твиттер" интересным, разнообразным и привлекательным. С какими элементами должен быть знаком каждый пользователь, который планирует завести себе страницу в изучаемой социальной сети?
Теперь понятно, зачем нужен "Твиттер", а также что можно делать при наличии аккаунта на данной площадке. Существуют некоторые термины, которые помогут освоиться в этой социальной сети.
"Твит" - это первое понятие, о котором нужно знать. Так называют короткие сообщения, которые оставляются в изучаемой социальной сети. "Твиты" - посты в микроблоге.
"Фоловер" - подписчик. Он представляет собой пользователя, у которого есть аккаунт в "Твиттере". Человек подписывается на страницу и видит в своей ленте обновлений новости от того или иного пользователя.
Независимо от версии "Твиттера" (есть мобильная и обычная), в социальной сети существует ряд своих правил, которые придется соблюдать. Речь идет и об особенностях регистрации, а также пользовании страницей, и о поведении в отношении пользователей.
Какие пункты выполнять обязательно? На просторах изучаемого микроблога придется придерживаться следующих правил:
Что еще важно знать? Некоторые интересуются, как правильно общаться со своими подписчиками. Четких правил в этом отношении нет. Но пользователи, особенно успешные, предлагают свою методику поведения.
В "Твиттере" рекомендуется соблюдать определенные правила этикета. Или, как еще говорят, поведения. Дело все в том, что, в принципе, в данной социальной сети нет никаких ограничений - важно не публиковать угрозы, оскорбления и призывы к насилию.
Но с фоловерами требуется как-то общаться. Что рекомендует успешные пользователи? Среди основных правил общения выделяют:
Больше никаких ограничений и существенных советов нет. Разве что регулярно обновлять "Твиттер". Некоторые пользователи регистрируются здесь только потому, что это модно, а потом забывают о своем аккаунте. Так не получится собрать много фоловеров.
Теперь следует уделить внимание процессу регистрации. Это обязательный пункт, который позволяет получить доступ к ресурсам сайта. На странице "Твиттер" регистрация займет всего несколько минут. При этом важно помнить, что у одного пользователя не может быть огромного количества аккаунтов. Один человек - один профиль.
Не нужно указывать и мобильный, и почту. Достаточно чего-то одного. Чаще всего выбирается второй вариант. Тогда можно зарегистрировать несколько профилей, но желательно под разными именами. К одному номеру телефона или почте может быть привязан только один аккаунт.
После заполнения указанных ранее полей (все они обязательны) нужно подтвердить профиль на сайте "Твиттер". Регистрация будет завершена после ввода кода подтверждения или перехода по ссылке, пришедшей на электронную почту.
Вот и все, больше ничего не нужно. Остается только заполнить свой профиль, поставить аватарку и сохранить изменения. "Твиттер" готов к работе! Если возникают проблемы с прогрузкой данных, можно воспользоваться специальным приложением для телефонов - Mobile Twitter. Оно позволяет быстро управлять аккаунтом в социальной сети с максимальным комфортом.
Стоит ли регистрироваться здесь? Рекомендуется пользоваться данной страницей, если пользователь любит делиться последними новостями и событиями из своей жизни. Зачем нужен "Твиттер"? Чтобы обмениваться именно короткими сообщениями. Не следует заводить здесь аккаунт, если человек не привык к постоянному общению.
(Твиттер) на данный момент является одной из самых популярных в мире. Ежедневно количество новых участников измеряется десятками тысяч. Чем вызвана столь большая популярность? Как пользоваться этой социальной площадкой? Какие возможности она предлагает? Обо всем этом мы расскажем в данной статье-обзоре.
Впервые социальный сервис Twitter был запущен 21 марта 2006 года. В тот день появилось первое публичное сообщение, оставленное основателем Джеком Дорси. Выглядит оно так: "Setting up my twttr" (англ. "Настраиваю свой твиттер"). Изначально сервис планировали использовать в качестве площадки для обмена краткими сообщениями между работниками фирмы Odeo, которая специализируется на разработке программного обеспечения. Длина сообщения должна была составлять 140 символов. Архитектура веб-сайта предусматривала мгновенную публикацию сообщений от пользователей, которые подписались на аккаунт создателя письма. Впервые публичная версия была представлена в июне 2006 года. Через два года было зафиксировано миллиардное сообщение.
Сегодня Twitter - это социальная сеть, которая дает владельцам аккаунтов возможность оставлять на своей странице короткие сообщения длиной до 140 символов (ограничение снова появилось в 2012 году). Желающие зарегистрироваться здесь видят в Твиттере не только социальную сеть, но еще и прекрасную возможность для распространения рекламы.
Большая популярность данного сайта также вызвана большим количеством известных личностей, которые имеют официальные аккаунты. В свое время мир испытывал моду на регистрацию страницы в Твиттере, чтобы узнать больше о мыслях своих кумиров. Каждый желающий имеет возможность быстро найти известную персону, набрав в поиске его инициалы или ник. Подписка на новости позволяет получать самую свежую информацию о постах, оставленных на страницах знаменитостей.
Кроме того, Твиттер превратился в одну из самых мощных новостных площадок. Благодаря простой, но в то же время эффективной системе хэштегов, каждый желающий имеет возможность ознакомиться с различными сведениями, которые могут вызвать интерес.
В разделе "Оформление" также есть возможность самостоятельно настроить свою тему. Интерфейс имеет следующий вид:
Ограничений по оформлению, как таковых, нет. Тем не менее, рекомендуем воздержаться от публикации изображений, которые носят слишком откровенный характер или могут оскорбить других пользователей.
Теперь давайте рассмотрим небольшую инструкцию как пользоваться твиттером, его возможности и плюсы.
Хэштег - это ключевые слова, которые ставятся непосредственно в сообщение пользователя. С его помощью другие пользователи могут быстро находить интересную информацию.
Чтобы найти нужную информацию, необходимо воспользоваться строкой поиска, расположенной здесь:
Перед вводом ключевого слова обязательно ставится знак решетки (#). После него вводится ключевое слово поиска. Пробела между знаком и словом быть не должно. Например, вводим хэштег #downhill . Вот что у нас получилось:
Ретвит, по сути, является альтернативой репоста в социальных сетях ВКонтакте, Facebook и так далее. Суть данной возможности заключается в том, что пользователь помещает на свою ленту пост от другого пользователя, показывая его своим читателям, которые подписались на аккаунт.
Наиболее распространенный способ ретвита - использование специальной клавиши под постом. Давайте рассмотрим его на конкретном примере.
Мы находимся на твиттер-странице гонщика в дисциплине Downhill Аарона Гвина. Нам понравился пост, оставленный на странице, и мы хотим ретвитнуть его на свою страницу.
Выбираем иконку "Ретвитнуть" и нажимаем на нее.
Появится следующее окно. Нажимаем на кнопку "Ретвитнуть".
Ретвитнутый пост появился на вашей странице.
Существует два способа стать читателем определенного пользователя. Первый, да и, пожалуй, самый распространенный - это подписаться на аккаунт человека, предложенный по общим интересам. Для этого предназначена специальная колонка, расположенная в правой части сайта. Нажатие на кнопку "Читать" автоматически превращает вас в фоллоуера (читателя) выбранного пользователя.
Есть и второй способ. Ищем в поиске человека, который нас интересует. После этого переходим на его персональную страницу. В правой части страницы находится кнопка "Читать". Нажатие на нее автоматически подписывает ваш аккаунт на выбранного пользователя.
На странице можно посмотреть список Ваших фолловеров, т.е. тех, кто подписался на вас. О том как можно привлечь пользователей и стать популярным в твиттере я написал отдельную статью.