遵循以下文档:
http://developer.android.com/training/connect-devices-wirelessly/nsd-wifi-direct.html
通过将数据放入wifip2pDnsSdServiceInfo对象,似乎可以向没有建立连接的所有附近具有WiFi Direct的设备广播数据.这适用于我的目的,因为我试图在多个附近的设备之间建立一个简单的P2P消息传递应用程序.然而,这似乎是对API的误用,因为它旨在携带信息以建立连接并宣传服务.我的问题是:
>以这种方式发送数据有哪些优缺点(请忽略安全性)?
>发送/接收的消息是否会有延迟.
>对电池寿命的影响是什么样的?
解决方法:
>传递到wifip2pDnsSdServiceInfo对象的键/值对将被封装到DNS多播消息中,如DNS-Based Service Discovery中所述.
> WiFi上的多播流量特别昂贵,因此不建议将其用于消息传递.仅适用于服务发现等关键事项.
>根据实现(androID),under框架可能会在调用回调之前汇集所有服务发现记录/响应.这可能会为您的简单P2P消息传递增加显着(甚至不可预测)的延迟.
>这基本上是一个DNS消息传递,因此您的“消息”可以在本地缓存. DNS查询还可以尝试中级优化,如池化,重试,查询过滤,优先级排序等.
>没有可靠性保证,因此您的消息可能会丢失.
>此处使用的多播流量可能会导致显着的battery drain on android, see here
以上是内存溢出为你收集整理的在Android WiFi Direct服务发现中发送数据而不是连接全部内容,希望文章能够帮你解决在Android WiFi Direct服务发现中发送数据而不是连接所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)