Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android/iOS Peer-To-Peer architecture [closed]

This is kind of wide question, I found many information about this topic.

Possible technologies

  • Bluetooth
    • GameKit iOS only?
    • Bluetooth P2P library, with Wi-Fi and GPS?
  • Wi-Fi
    • Wifi Direct?
    • Bonjour zeroconf?

Neither of these does currently have a fully-implemented peer-to-peer library, or I haven't found such.
In fact I'm not interested in any kind of gaming library (and I don't target such issues)

Questions I'd considered

  • Peer to peer connection in android
    • Android since API 14 and no support for cross-platform usage
  • Android Peer-to-Peer technolog
    • ANI (https://github.com/pocmo/Android-Network-Intents) only network intercepted
    • DIAL,MOVL only wi-fi
  • Android Peer-to-Peer Connection
    • C2DM/GCM requires mobile data
  • Can Android do peer-to-peer ad-hoc networking?
    • Direct Wifi only
  • Peer-to-Peer video from iOS to Android?
    • Requires network data and server
  • http://forum.unity3d.com/threads/141469-Wifi-Bluetooth-Multiplayer-on-iOS-and-Android
    • GameKit is compatible only with other GameKit
  • https://www.alljoyn.org/docs-and-downloads/documentation/alljoyn-android-environment-setup-guide-rev-d
    • Bluetooth is not well supported, and requires rooting of device.

I'd like to efficiently communicate between as many devices as possible, without need of using mobile data (3G,HS*PA,LTE) or WIFI AP as intermediate point.
And not connecting people over large distances, really just like a PAN over Bluetooth.

Thus, what features I'd require to have

  • Totally OFFLINE (not requiring any mobile data services or wifi AP)
  • Cross-platform compatibility (Android, iOS)
  • Mobile OS backwards compatibility (Android since 2.3, iOS since 5.1.1)

Features I'd like to have

  • Route optimization (OSPF, MME, ...)
  • Not requiring devices to authorize to network (see Android insecure BT RFCOMM)
  • Possible wrapping up-to tens of users (20-30 max imo, or more if possible)
  • If needed, network could possibly choose its own leader (server node) ?

Is there currently anything I could use for mentioned features?

like image 538
Marek Sebera Avatar asked Jul 06 '13 12:07

Marek Sebera


1 Answers

I know google just came out with a cross platform api for ios and android devices to communicate with each other. I don't know what you're exactly looking for but this one lets you pass small binary payloads between Android and IOS devices. they don't have to be on the same network at all either or connected to the internet. I'll include the link just check it out.

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

like image 77
Karpisdiem Avatar answered Sep 29 '22 03:09

Karpisdiem