2015-08-17 2 views
1

Я пытаюсь сделать приложение для Android, которое будет передавать данные с живого датчика (например, акселерометр и т. Д.) С моего устройства Android на мой настольный компьютер.Поток данных с Android-устройства на настольный компьютер, когда они подключены к различным сетям (Android WiFi, компьютер Ethernet)?

Мое устройство Android подключено к сети WiFi, а мой настольный компьютер подключен к сети с помощью кабеля Ethernet.

Доступны приложения для Android, которые отправляют данные с устройства Android на ПК через WiFi, но оба устройства должны быть подключены к одной сети.

Есть ли способ передачи данных, если два устройства подключены к разным сетям?

Спасибо!

+0

Если ваш компьютер подключен к одному маршрутизатору (или по разным коммутаторам к маршрутизатору, который передает сигнал Wi-Fi на телефон), он по-прежнему остается той же сетью. (за исключением того, что вы включили что-то вроде изоляции клиента) –

+0

Это не та же сеть, потому что Ethernet переходит на маршрутизатор в моем офисе, но беспроводная сеть предоставляется другим передатчиком (центральным для университета). – Kantharis

+0

Будет ли Bluetooth альтернативой? – TheBaj

ответ

0

В связи с тем, что почти каждая сеть сидит за брандмауэром (в большинстве случаев ваш домашний маршрутизатор/физ-устройство), необходимо осуществить переадресацию портов для доступа к сети 2 от сети 1.

Другой бы Подход настроить VPN (fi с SSH) между двумя хостами.

Если ваш компьютер подключен напрямую к Интернету и имеет общедоступный ip (это означает, что если у вас нет адреса RFC 1918), вы можете напрямую подключиться к этому ip, просто введя этот ip. Если нет, вам нужно внедрить что-то, чтобы выйти за брандмауэр.

+0

Привет, Доминик. В конце концов, я пошел по другому пути, но в конце концов использовал порты. Моя конечная цель состояла в том, чтобы отправить данные в эскиз обработки, так что я сделал то, что я использовал библиотеку oscP5 и очень легко управлял отправкой данных датчиков между двумя машинами. Я загрузил его на свой github [link] (https://github.com/mandarini/RemoteObserver) – Kantharis

0

Простой ответ; для передачи данных между ПК и устройством Android, каждый из которых находится в разных сетях, вам нужен промежуточный сервер для передачи данных.

Теперь, если это небольшое приложение, которое вы делаете для своей цели, я предлагаю использовать бесплатную версию Firebase (см. https://www.firebase.com/). Их пример приложения, который вы найдете там, простой чат-сервис, делает в значительной степени то, что вам нужно. Просто позвольте программе на вашем ПК (желательно в веб-приложении) прочитать «сообщения», отправляемые с вашего устройства Android.

+0

Привет, Эрик, спасибо за ваш ответ, я не пробовал, но он должен работать, поскольку оба устройства будут использовать онлайн- стороннего сервера. Я пытаюсь что-то другое, и я опубликую свое решение (если найду тот, который мне лучше подходит). – Kantharis

Смежные вопросы