首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用蓝牙连接iOS和安卓设备有可能吗?

用蓝牙连接iOS和安卓设备有可能吗?
EN

Stack Overflow用户
提问于 2013-04-30 14:36:12
回答 3查看 6.4K关注 0票数 4

我必须制作一个应用程序来配对一个iOS和安卓设备(iPhone 5,iPad 3,GalaxyS3,Nexus 7--它们都使用蓝牙4.0),然后互相发送数据。

  • 这个数据量是有限的吗?我们可以发送像照片或PDF之类的东西吗?

我已经完成了两个iOS设备之间的配对和发送数据,使用CoreBluetooth和苹果转移的示例代码

据我所知,外围设备(Server)可以向中央(客户端)发布广告。该中心正在扫描自身,然后通过查找广告服务的UUID来尝试查找服务器。

当我在Android上创建一个服务器时,它正在等待连接(侦听),我知道我的服务器的UUID和mac地址。但是当我用我的iPhone (当然是扫描相同的UUID )扫描时,我找不到服务器。

  • 那么,安卓服务器是否有可能像iOS上的外设那样进行广告宣传呢?
  • 或者我的iPhone客户端可能使用服务器的mac地址进行连接?
EN

回答 3

Stack Overflow用户

发布于 2014-07-31 19:27:36

问:这个数据量是有限的吗?我们可以发送像照片或PDF之类的东西吗?

蓝牙低能没有优化用于发送大量数据,也没有对流媒体进行优化。它更适合定期发送小块数据(如温度读数、时间等)。请看一看这个答案,以了解BLE传输是如何区别于传统蓝牙。尽管如此,您仍然可以在BLE上发送大量数据,数据量是无限的。然而,这最终可能是不可靠和相对缓慢的。

问:那么安卓服务器是否有可能像iOS?上的外设那样做广告呢?

作为一个服务器/客户端与作为外围/中心是完全不同的:

Peripheral/central指示连接是如何建立的。中心设备应该启动连接。外围设备应该做广告并等待连接请求。

Client/Server指示数据的分布方式。关贸总协定服务器保存数据。关贸总协定客户端可以读取、写入或被通知(获取连续的数据流)这些数据。在大多数情况下,服务器也是外围设备,但这不是强制性的。

因此,要回答您的问题,是的,服务器可以像iOS上的外围设备那样做广告。然而,对于Android来说,这个功能还没有实现,将成为下一个版本(Android )的一部分。有关更多信息,请参阅此回答

问:或者我的iPhone客户端可能使用服务器的mac地址连接?

据我所知,在coreBluetooth中,连接到它需要的是外围设备的UUID,而不是MAC地址。您不需要知道从外围设备上广告的服务。您最好的选择是扫描外围设备,然后连接到具有UUID和/或您知道属于外围设备的广告数据的设备。

我希望这能帮到你。

票数 10
EN

Stack Overflow用户

发布于 2014-07-31 17:09:40

我没有把握。蓝牙LE不是传输大文件的好主意。在一个请求电话中,您只有18个字节。

Nexus 7蓝牙芯片有一些缺陷-工作不正确。

尝试免费应用IPhone -浅蓝。

所以..。

第一个问题:是的。

第二:是的,但这不是个好主意。Iphone中的MAc地址每10分钟交替一次,并且都打开/关闭蓝牙。

票数 0
EN

Stack Overflow用户

发布于 2016-05-10 15:45:44

通常,发送大型文件最好使用internet连接(通过云),有许多框架可以为您减少开销。

但是,主要的问题仍然是如何发现您想要将数据发送到哪个设备。

可以有多种方法来完成这一点,例如使用BLE或甚至声音。

老实说,这是很多工作,所以如果你的应用是最终用户驱动,我建议使用一个框架,可以为你做跨平台的发现,如:http://p2pkit.io或谷歌附近。

免责声明:我为Uepaa公司工作,为iOS和Android开发iOS

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16302525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档