Интеграция Twitter в приложение для Android - PullRequest
4 голосов
/ 18 февраля 2011

Я хочу простой пример реализации Twitter в нашем приложении. Я предпочел бы, чтобы это не было доступным для просмотра; он должен открываться только в нашей области применения. После входа пользователь может публиковать твиты в своем аккаунте.

1 Ответ

6 голосов
/ 18 февраля 2011

Хороший вопрос, который оставляет очень много места для встречных вопросов: -)

Я вижу по крайней мере два способа пройти по пути (обратите внимание, что я не очень разбираюсь в твиттере или как он используется):

  1. Вы синхронизируете данные Twitter («твиты»?!?) На телефоне для последующего просмотра.

  2. Вы всегда просматриваете снимоктекущие твиты на заданном канале и ничего не хранят (кроме учетных данных пользователя).

Начиная с первого варианта , который вы обычно хотите синхронизироватьбаза данных SQLite (возможно, с пользовательским провайдером контента ) на цели с данными из твиттерного канала на веб-серверах твиттера (вы можете немного узнать о том, как выглядит общедоступный твиттер-API здесь).

Эта синхронизация будет выполняться фоновой службой на телефоне.Ваш фактический графический интерфейс не будет связываться с самим этим сервисом, он будет скорее читать данные из (и только из) локальной базы данных SQLite.Таким образом, ваш графический интерфейс не будет зависеть от задержки в сети, трафика данных или доступности данных из Интернета.Это будет зависеть только от подключения к базе данных на вашей локальной цели.Убедитесь, что вы запускаете свой сервис в отдельном потоке.По умолчанию он будет работать в главном потоке (он же «GUI-поток»).

Вы можете передать запись в AlarmManager , который время от времени будит вашу фоновую службу;служба будет кешировать данные твиттера в базе данных, а затем уничтожать себя (для экономии ресурсов).

Второй вариант не потребует уровня кэширования базы данных (однако рекомендуется избавиться от него).веб-зависимостей в вашем слое GUI, база данных будет содержать только самые последние данные, старые данные будут перезаписаны независимо от того, прочитал ли пользователь их или нет).

В обеих альтернативах выВозможно, вы захотите сохранить некоторую базовую информацию о пользователе, такую ​​как имя пользователя и пароль.Вы можете сохранить эти значения в базе данных SQLite или, если хотите, просто: в инфраструктуре Shared Preferences .

Скорее всего, вам также потребуется чтение и анализ XML данные из интернета.Это чтение и анализ будут выполняться сервисным уровнем (помните: запустите его в отдельном потоке, чтобы избежать отставания пользовательского интерфейса и даже не получить тайм-аут приложения, не отвечающего).

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