Android - Более 3g, какие порты использовать, и является ли TCP лучшим способом подключения? - PullRequest
2 голосов
/ 15 июня 2010

Является ли метод связи TCP лучшим способом передачи большого количества данных на несколько устройств Android с другого устройства Android более 3g?Также есть ли рекомендуемые порты для передачи данных 3g?

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

Приветствия, Джеймс

Ответы [ 3 ]

1 голос
/ 15 июня 2010

Как метод связи лучше всего использовать TCP способ получить много данных до несколько андроид устройств из другого Android-устройство более 3g?

Учитывая ваше ограничение "нет веб-службы", 3G может оказаться бесполезным для вас. Многие операторы мобильной связи используют NAT и связанные технологии, поэтому не существует гарантированного способа установить прямое сокетное соединение между двумя устройствами. То же самое относится и к WiFi - многие WiFi-маршрутизаторы используют NAT, раздавая частные IP-адреса, исключая прямые сокетные соединения без изменения одного из маршрутизаторов.

0 голосов
/ 18 августа 2010

Некоторые сети 3G могут предлагать многоадресную рассылку, что является наименьшим усилием для любого сервера, поскольку он отправляет сообщение один раз, независимо от количества подписчиков. В противном случае каждое прослушивающее устройство должно будет открыть уникальный сокет для сервера, а сервер должен будет отправить каждому по очереди сообщение. В зависимости от характера сообщения может быть возможным использовать UDP или TCP. Все зависит от того, требует ли сообщение подтверждения, является ли оно изменчивым, много ли сообщений или только несколько и т. Д.

Что-то вроде JMS или шины сообщений обычно обрабатывает все это для вас. Я не знаю, есть ли порт JMS для Android (например, OpenJMS), но его стоит изучить.

0 голосов
/ 15 июня 2010

Если у вас есть данные, которые не могут пропустить детали, вы должны использовать TCP.Если у вас есть данные, которые могут потерять некоторые части, такие как видео / голосовой чат, вы можете использовать UDP.

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

...