Архитектура Peer-To-Peer для Android/iOS

Это довольно широкий вопрос, я нашел много информации об этой теме.

Возможные технологии

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

Вопросы, которые я рассматривал

Я хотел бы эффективно общаться между как можно большим количеством устройств, без необходимости использования мобильных данных (3G, HS * PA, LTE) или WIFI AP в качестве промежуточной точки.
И не подключая людей на большие расстояния, действительно так же, как PAN через Bluetooth.

Таким образом, какие функции мне потребуется, чтобы

  • Полностью OFFLINE (не требуя каких-либо мобильных услуг передачи данных или Wi-Fi AP)
  • Кросс-платформенная совместимость (Android, iOS)
  • Обратная совместимость с ОС Android (начиная с версии 2.3, iOS с версии 5.1.1)

Возможности, которые я хотел бы иметь

  • Оптимизация маршрута (OSPF, MME,...)
  • Не требует от устройств авторизации для сети (см. Android небезопасный BT RFCOMM)
  • Возможна упаковка до десятков пользователей (20-30 max imo или больше, если это возможно)
  • При необходимости сеть может выбрать своего лидера (сервер node)?

Есть ли что-нибудь, что я мог бы использовать для указанных функций?

Ответ 1

Open Garden разрабатывает такую ​​технологию и реализует ее в своем приложении Firechat. Тестируя приложение, мы обнаружили, что соединения Android-Android работают только по Bluetooth, iPhone-to-iPhone работает с Bluetooth или Wi-Fi, а Android-iPhone работает только в том случае, если телефоны подключены к одной сети. Здесь ссылка на их sdk, которая должна быть скоро: https://opengarden.com/sdk

Ответ 2

Я знаю, что Google только что вышел с кросс-платформенной api для iOS и Android-устройств, чтобы общаться друг с другом. Я не знаю, что вы ищете, но это позволяет передавать небольшие бинарные данные между устройствами Android и IOS. они не обязательно должны быть в одной сети или подключены к Интернету. Я включу ссылку, просто проверьте ее.

https://developers.google.com/nearby/messages/overview

Ответ 3

В настоящее время только OpenGarden FireChat является одним из основных игроков, делающих это. Они предоставляют набор sesh, который в настоящее время я думаю, вам нужно Применить для.

Есть еще один проект, который был немного потрясен, но я слышал, что предположил, что релиз скоро появится: Thali Project

Ответ 4

Я бы рассмотрел данные datachannels WebRTC, который имеет встроенную поддержку как iOS и android. Вы также можете включить настольные браузеры как одноранговые узлы с помощью WebRTC.