Android TCP / LocalService - PullRequest
       5

Android TCP / LocalService

0 голосов
/ 22 ноября 2011

Я новичок в разработке для Android и не уверен, что лучше всего справиться со следующей проблемой.

Справочная информация: у меня на клиенте запущен TCP-клиент, который общается с сервером.это нормально работает, но при переходе к следующему шагу я не уверен, что делать.

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

Каков наилучший способ справиться с этим?Вот некоторые из моих мыслей.

1) Класс, в котором был бы клиент Runnable, работающий в другом потоке (я думаю, что это недопустимое решение, поскольку было бы нелегко использовать одно и то же соединение для нескольких действий)

2) Может быть запущена локальная служба, которая может выполнять основную деятельность, а остальные операции могут связываться с ней и отправлять в нее данные.

Если правильный ответ номер 2, янемного запутался в том, как будет работать такой сервис.Я думаю, что в методе службы OnCreate () он запускает TCP-соединение с сервером.Как только соединение с сокетом установлено, я немного не уверен в том, как на самом деле поддерживать связь со службой и предоставлять ей данные, необходимые для отправки через клиента.

1 Ответ

1 голос
/ 22 ноября 2011

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

Обязательно остановите службу, когда вы закончите с ней.

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