目前我正在计划开发一个跨平台应用程序(iOS/Android),它可以在没有互联网的情况下从一台设备流式传输音乐到其他设备。现在我正在考虑哪种网络技术最适合这种用例。顺便说一下,很抱歉我没有向你打招呼,因为它总是消失了。
现有的WiFi网络:
我不想使用这个,因为我希望我的应用程序能够在任何地方工作。
WiFi-Direct:
iOS不支持(如果我错了请告诉我)。
蓝牙:
在这里我找到了一些相互矛盾的信息。
- Bluetooth 2.1被iOS和Android都支持,但是iOS有自己的协议,不支持常用的协议。
- 低功耗蓝牙提供的数据速率对于高质量音乐流式传输来说太慢(1Mbit),并且仅受到iOS支持,在Android端需要版本4.3,这会影响约一半的用户。
- 我不确定的是蓝牙4.0的“正常”(非低功耗)使用情况。有人有关于这方面的经验/信息吗?
一些运营商不允许使用热点功能。
在iPhone和某些(我不知道具体哪些)安卓设备上没有手机信号的情况下无法创建热点。
在iPhone上如果没有激活蜂窝数据,则无法创建热点;对于安卓设备,我不确定(Nexus 4:没有问题,SGS3 mini:在创建热点后可以关闭蜂窝数据),这对于那些没有无限互联网套餐或不想共享他们的互联网连接的人来说是一个问题(因为这会消耗高速数据流量),但请参阅下一个要点。
为了让每个人都能使用自己的蜂窝数据连接,iOS上的wifi设置可以手动编辑(删除路由器、DNS和搜索域条目)。在安卓上是否有类似的方法?是否有自动化此过程的方法? https://apple.stackexchange.com/questions/173894/can-i-connect-to-wifi-but-still-use-cellular
是否有任何一种方式可以以编程方式创建wifi网络(而不仅仅是启用普通的wifi热点)?
SDKs/Frameworks像Open Garden或Alljyon一开始看起来很有前途,但:
Firechat (由Open Garden团队制作)承诺iOS和android设备可以在没有现有网络的情况下进行本地聊天,但实际上我在iPhone 6和SGS3 mini上测试并未成功。然而,他们不想发布他们的SDK。我得到的唯一信息是它可以通过wifi-direct和蓝牙工作。如果有人知道这是如何实现的,请告诉我。
Alljoyn不提供在没有现有网络的情况下iOS和android之间的直接通信。(如果我错了请告诉我)
API's:
- iOS多点连接不支持android
希望有人能帮助我。
敬礼,尼尔斯