所需功能:
用户A在Android或iOS设备上运行您的应用。用户A可以自动查找附近的其他用户(跨平台)运行,无论他们运行的是Android还是iOS,并且没有任何用户可以连接互联网(脱机)。
我相信这是人们普遍希望的功能,对这个问题有一个明确的答案将对移动开发社区大有裨益。
您想要的其他要求/事物,按照重要性顺序:
问题:
如何实现所需的功能?
子问题1
可能吗?
回答:是。诸如Firechat和Spaceteam之类的应用程序可以做到这一点,因此必须做到这一点。
拒绝的可能性:
Multipeer :仅iOS,无法实现跨平台。
Alljoyn :iOS绑定(bind)仅是Objective-C,不能实现单个代码库。
Mono.Zeroconf :Supposedly would require separate platform implementations,所以不实现单个代码库吗?
Open Garden SDK :它将是一个很好的解决方案,但实际上尚不存在。
我已经研究了这个主题几天了,但找不到确切的答案。部分原因可能是人们使用了很多不同的术语,例如网状网络,临时网络,zeroconf,DNS-SD等,这使搜索变得困难。
如果您对我对stackoverflow和其他地方所做的某些研究感兴趣,请访问some notes and links(我在本文中直接放入的链接数量受到限制)。
最佳答案
不知道这是否是您要查找的内容,但我强烈建议您将Xamarin与本地的ZeroConf库一起使用,该库具有Xamarin支持。
https://github.com/onovotny/Zeroconf
它的工作原理非常好,并且通过发现其他ZeroConf设备的 native 且统一的方式使您接近统一的代码库。
编辑:看起来ZeroConf库只支持订阅ZeroConf服务,并且不支持发布,我想您也需要发布。但是似乎其他用户已请求它,因此似乎他们将要添加的功能。
关于android - 本地iOS-Android zeroconf临时网络,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24623338/