在 Android 中,可以在相同的两个设备之间建立多个蓝牙连接吗?

2024-01-01

我有两台 Android 设备。一个充当服务器,另一个充当客户端。客户端连接到服务器并请求一个文件 - 这是在客户端上的一个线程和服务器上的一个线程中完成的,以便两者都可以继续做他们想做的事情。

然后客户端尝试再次连接到服务器以请求另一个文件。现在我得到了java.io.IOException: Device or resource busy当尝试连接时(socket.connect())。是因为蓝牙(在 Android 上)只允许两个设备之间建立一个通道吗? (如果是另一台设备,它可以工作,但如果是相同的设备,则不能工作?)请注意,两次尝试都是使用相同的服务名称和 UUID 进行的。

即使错误是特定于我的代码的,我也想知道是否是这种情况。

System:android 2.2.1 与 bluecove 蓝牙库通信。


绝对不具有相同的 UUID(通用唯一标识符)。

参考资料取自here http://www.bluetooth.org/Technical/AssignedNumbers/service_discovery.htm

也许有不止一个。您可以以服务器/客户端方式连接多个设备,您可以尝试将其中一台设备设置为服务器,并在另一台设备上启动多个客户端。我的第一个猜测是启动多个客户端线程,但您可能必须找到一种方法来更改每个线程的 MAC 地址。

Here https://android.stackexchange.com/questions/17657/how-to-change-permanent-mac-address-on-my-android-phone您可以找到有关如何更改 mac 地址的另一个讨论,但仅适用于 root 设备。我找不到任何其他非 root 的东西。不知道如何以编程方式执行此操作,但它可能会给您一个开始。

Here https://groups.google.com/forum/?fromgroups=#!topic/android-developers/adeBD275u30有一个关于在服务器中同时连接多个客户端的讨论。我从那里到达这个问题 https://stackoverflow.com/questions/3943182/multiple-bluetooth-connection。 (我想这可能是你最接近的镜头)

Here https://groups.google.com/forum/?fromgroups=#!searchin/android-developers/bluetooth%2420micinski/android-developers/u5oPF2ZkxlI/RkOXR2A3PtYJ你们正在讨论点对点网络。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Android 中,可以在相同的两个设备之间建立多个蓝牙连接吗? 的相关文章

  • 带身份验证的 MediaPlayer RTSP 视频流

    我能够在未经授权的情况下从网络摄像机流式传输视频 但现在我需要在授权的情况下执行此操作 我发现很少有信息表明 Android 不支持 RTSP 身份验证 但我发现另一条信息表明 通过使用该方法添加标头 可以在 API 级别 14 中实现身份
  • 如何捕获 Runnable 中的封闭范围

    我正在尝试对 a 进行一系列更新HandlerThread使用下面的类 但我有几个关于变量捕获在 Java 中如何工作的问题 1 Is ret通过引用从封闭范围捕获 2 Does this参考Runnable 或者是从封闭范围捕获的 bon
  • 无法禁用 Firestore 中的离线数据

    从我的数据中删除数据后Firestore Database 这需要我的Android app一段时间后才意识到数据已被删除 我认为这是由于自动数据缓存而发生的 我的应用程序与离线使用无关 我想禁用此功能 我已将其添加到我的自定义中Appli
  • 在 Android 上检测已接听的拨出电话

    我知道这个问题已经被问过很多次了 但没有答案 但我仍然希望有人终于解决了这个问题 问题 我有一台运行 Android 2 3 的未 root 设备 我需要创建一项服务 打电话 等待呼叫被应答 接听电话后挂断电话 有超时 和其他许多人一样 我
  • 读取 Android 4.2 中的 APN?

    我有个问题阅读 APN在安卓v4 2中 是读 不是写APNS 它抛出一个安全异常 没有写入 APN 设置的权限 用户 10068 和当前用户都没有权限 进程有 android permission WRITE APN SETTINGS 相同
  • Android - 启用和禁用蓝牙 - SDK 3 (OS 1.5) - 以编程方式?

    我编写了代码来以编程方式启用和禁用各种功能 例如 Wifi 振铃模式 飞行模式 您将在电源切换小部件中看到的所有内容 我还没有找到如何做的一个是蓝牙 看来在 SDK level 3 OS 1 5 中没有漂亮的蓝牙管理器类 有没有人指出关于启
  • Android 服务 START_STICKY START_NOT_STICKY

    我需要让我的服务始终在后台运行 并使用 startService 函数启动我的服务 无论应用程序的状态如何 我都不想重新启动服务 这是我的观察 START STICKY gt 如果应用程序启动 则服务正在重新启动 当应用程序关闭时 服务也会
  • Android:让用户从图库中选择图像或视频

    是否可以以这样的方式启动图库 以便同时显示图片和视频 Thanks 从图库中选择音频文件 Use MediaStore Audio Media EXTERNAL CONTENT URI Intent intent new Intent In
  • 如何编写 adb jdwp + adbforward 脚本?

    我正在尝试使用命令行和脚本工具调试 Android 应用程序 我已经受够了 Android Studio 占用我的 CPU 要连接到我的应用程序 我需要adb jdwp获取 pid 然后adb forward tcp 8700 jdwp
  • 错误:类 kotlin.reflect.jvm.internal.FunctionCaller$FieldSetter

    我已尝试一切方法来消除此错误 但它不断出现 Class kotlin reflect jvm internal FunctionCaller FieldSetter can not access a member of class com
  • Eclipse Android 模拟器 - 键盘不工作

    我刚刚更新到最新的 SDK 版本 16 使用最新版本的 API 16 创建了新版本的 AVD 并且我的硬件键盘在模拟器上不再工作 甚至我的其他 avd 使用旧版本的 sdk 任何想法如何解决这一问题 您的 AVD 的 键盘支持 硬件属性是否
  • 无法在 Android Studio 中运行项目

    当我尝试在 Android Studio 中运行我的项目时 我收到以下错误消息 Execution failed for task CricHQ dexDebug gt com android ide common internal Log
  • 谷歌的Json解析Gson库:JsonElement和JsonObject有什么区别?

    public abstract class JsonElement extends Object 表示 Json 元素的类 它可以是 JsonObject JsonArray JsonPrimitive 或 JsonNull public
  • 调用属于Fragment的Activity的函数

    我正在与多个Fragments在 Android 下 我对如何从嵌入式应用程序发送和接收数据感到困惑 为了简单的解释 我有一个ListFragment and a MapFragment使用解释的方法here https stackover
  • 使用磁场计算旋转矩阵

    在获取旋转矩阵值时它包含public static boolean getRotationMatrix float R float I float gravity float geomagnetic 这里我如何计算float gravity
  • 尝试重新打开已关闭的对象:sqlitequery

    所以本质上我查询数据库两次 我不明白这个错误真正来自哪里 因为我没有在任何地方关闭数据库 返回错误的代码是这样运行的 我查了一下 刚刚看到一个像我这样的案例 BeaconHandler pullAllDB new BeaconHandler
  • 如何为部分 Android 活动创建通用代码?

    我的申请中有 14 项活动 这 9 个活动中包含自定义标题栏和选项卡窗格 所以在这里我需要在一个地方编写这个通用代码 而不是在每个包含自定义标题栏和选项卡窗格代码的活动中编写冗余代码 即布局及其活动特定代码 有哪些可能的方法可以做到这一点
  • 如何在jetpack compose中删除文本基线下方的空间?

    目前我得到这个 但我想要这样的东西 而且 50 和 min 中的文本也应该与顶部对齐 My code Row verticalAlignment Alignment Bottom Text text 18 color MaterialThe
  • 如何在 Android 的应用程序中使用 LDAP 身份验证?

    我想在我们的应用程序中添加 LDAP 身份验证 我在 Github 上搜索并找到了两个应用程序 但它们无法连接到服务器 通过ldap连接服务器的必要条件是什么 查看 UnboundID SDK 他们有一个适用于 Android 的套件 该应
  • Android 中用于过渡的自定义动画对象?

    我想用一些更奇特的东西来覆盖 Android 中的默认活动转换 我想做的事情不能用通常使用的 XML 集来完成 所以我不能使用overridePendingTransition因为它只接受对基于 XML 的动画资源的整数引用 我想做的是创建

随机推荐

  • Android 中最近的设备更新存在 Toast 通知问题

    这篇文章与现有的已提交错误相关 https groups google com forum topic android developers K7pjy3Gm5Lk discussion https groups google com fo
  • WPF加载序列化图像

    在应用程序中 我需要通过二进制编写器序列化图像 并将其获取到其他应用程序中以显示它 这是我的 序列化 代码的一部分 FileStream fs new FileStream file FileMode Create FileAccess W
  • 使用 ImageIO.read 时出现问题

    好的 我有一张正在尝试阅读的图像 问题是 Image read file 返回 NULL File file new File C images image1 jpg if file exists System out println Im
  • 如何设置“UILabel”的字符间距(紧排)和删除线样式?

    我需要为由 a 呈现的文本设置两个属性UILabel 字母之间的间距 kern 及其删除线样式 基于NSAttributedStringKey文档 我已经创建了以下扩展UILabel extension UILabel func setSt
  • WCF 使用匿名方法关闭连接

    在我们的项目中 我们使用以下代码进行 WCF 调用 In generated Proxy we have public static ICustomer Customer get ChannelFactory
  • ZF2 Form Hydration 具有多个对象和字段集

    我正在努力尝试弄清楚如何使用单个表单编辑多个模型 我有一个名为 Teams 的数据库表和一个与该表关联的条令实体 我创建一个表格如下 我的团队字段集 class TeamFieldset extends AbstractFieldset i
  • 我可以在 C++ 工厂中声明的同一行使用变量吗?

    我有一个多态的类层次结构 虽然我也支持标准工厂方法 即仅使用基类指针 但我还想要一个为我提供派生类的工厂机制 这并不容易 因为这些函数仅在返回类型上有所不同 这就是为什么我想到重载函数并让编译器选择正确的函数的原因 一个简单的应用是 我可以
  • F# 的情况如何? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 简单的 C Java 代码非常难以并行化 多线程等 因此 简单的 C Java 代码将使用越来越少的机器上的总处理能力 因为现在一切都将是多核的
  • 两个类之间的 ActionListener

    导入 javax swing 类标签扩展 JFrame JPanel pnl new JPanel ImageIcon duke new ImageIcon duke png JLabel lbl1 new JLabel duke JLab
  • 升级到 Google Play Services 9.0.0 后,应用程序在 DynamiteModulesC 中挂起

    通过这些更改和重新生成 将开发中的应用程序升级到 9 0 0google services json classpath com google gms google services 3 0 0 compile com google and
  • 如何在 VS Code 中正确集成 Cmder 2021 年 4 月?

    我想将 Cmder 集成到我的 Vscode 设置中 但在 2021 年 4 月的 vscode 更新中 命令 terminal integrated shell windows 和 terminal integrated shellArg
  • 强制 WPF TextBox 在 .NET 4.0 中不再工作

    在我的 WPF 应用程序中 我有一个文本框 用户可以在其中输入百分比 作为 int 介于 1 和 100 之间 Text 属性与 ViewModel 中的属性进行数据绑定 我在其中强制将值置于 setter 中的给定范围内 但是 在 NET
  • 在 Neo4J 中,当索引已存在时启动 CREATE INDEX ON

    如果您在已有此索引的 Neo4J 数据库上重播 CREATE INDEX ON 命令 会发生什么情况 Neo4J 是否会简单地忽略该命令 第一次执行它时 Neo4j 将 创建索引 创建一个后台作业来填充它 作为查询统计信息 告诉您索引已创建
  • 我可以取回 MySQL 表中列名的默认值吗? [复制]

    这个问题在这里已经有答案了 我可以获取表的列名称 但有没有办法检索每列的默认数据值 这是我用来获取表列名称的方法 q dbh gt query DESCRIBE tablename table fields q gt fetchAll PD
  • 错误:在 NDK 工具链文件夹中找不到 ABI 的工具链,前缀为:arm-linux-androideabi

    我对 Android Studio 真的很陌生 我正在快速移动并从我的代码中删除了一些内容 现在我不断收到错误消息并且我的 gradle 同步失败 我在日志中看到以下内容 2016 06 01 05 39 55 358 32778590 W
  • keydown 事件覆盖返回键在 Firefox 中不起作用

    我有以下简单的 javascript 代码 它处理返回键 我不想在文本框中按下返回键时提交表单 所有这些工作正常 但在 Firefox 中 如果我显示一条警报消息 那么它会停止工作并且开始提交表单 而没有警报消息的确切代码工作正常并停止提交
  • 如何计算可迭代对象中的非空元素数量?

    我正在为以下代码片段寻找更好 更 Pythonic 的解决方案 count sum 1 for e in iterable if e len list filter None iterable Using None作为谓词filter只是说
  • 使用 GDAL 和 Python 的最小距离算法

    我正在尝试实施最短距离算法使用 GDAL 和 Python 进行图像分类 计算样本区域的平均像素值并将其存储到数组列表 sample array 中后 我将图像读入名为 values 的数组中 使用以下代码循环遍历该数组 values va
  • WPF DataBinding 监视抛出的异常

    在我的模型中 我有很多不同对象的属性 我在设置对象值时检查该值 如果该值不被接受 我将抛出一个异常 这与 Windows 窗体 propertygrid 完美配合 但现在我正在尝试使用 WPF 设计新界面 在WPF中 当我将属性绑定到文本框
  • 在 Android 中,可以在相同的两个设备之间建立多个蓝牙连接吗?

    我有两台 Android 设备 一个充当服务器 另一个充当客户端 客户端连接到服务器并请求一个文件 这是在客户端上的一个线程和服务器上的一个线程中完成的 以便两者都可以继续做他们想做的事情 然后客户端尝试再次连接到服务器以请求另一个文件 现