附近连接 2.0 中的错误代码

2023-11-24

我一直在尝试新的安卓 附近连接 v2.0API。我的大多数设备现在可以在大多数时间相互通信,但我也得到了很多错误代码尝试连接时返回。检查status.getStatusCode()在我的程序中,我可以看到以下返回码:

  • STATUS_ALREADY_CONNECTED_TO_ENDPOINT (8003)
  • STATUS_BLUETOOTH_ERROR (8007)
  • STATUS_ENDPOINT_IO_ERROR (8012)
  • 状态错误 (13)

我很难理解这些。第一个错误代码seems不言自明的,除了当我没有在所谓的连接的任一侧点击带有“SUCCESS”返回代码的 onConnectionResult 回调时,我会看到它。我当前的代码充满了跟踪语句,如果已达到这些回调,我会看到日志记录条目。因此,设备可能在某个较低级别连接,但如果是这样,较高级别的代码并不总是会听到它。

我猜测 STATUS_BLUETOOTH_ERROR 表示记录它的一侧出现蓝牙错误,而 STATUS_ENDPOINT_IO_ERROR 表示另一端出现错误(可能涉及蓝牙)?是否可以了解更多详情? 我偶尔看到的 STATUS_ERROR (13) 状态听起来像是程序员在“WTF,我们永远不应该到达这里”时刻使用的错误代码,但如果无法访问源代码,我只能猜测。

请注意,我在其他时间使用相同代码相互完美通信的设备之间看到了这些错误。有时,如果代码重试足够多的次数,它最终会获得稳定的连接。有时它连接并立即与另一端断开连接。有时我只是收到无穷无尽的重复错误消息(STATUS_BLUETOOTH_ERROR 和/或 STATUS_ENDPOINT_IO_ERROR)。

我正在使用“附近连接”和连接策略P2P_CLUSTER。当双方都进行广告和发现时,这些问题似乎最常发生。然而,我编写了两个专门从事广告或发现的较小程序,它们有时也会出现这些错误(但频率较低)。

在跟踪消息中,我还注意到来自附近连接的许多警告消息,如下所示:

09-04 22:54:40.070 3866-3924/? W/NearbyConnections: Cannot deserialize BluetoothDeviceName: expecting min 16 raw bytes, got 6

我猜测这是因为附近连接使用自己的短令牌(例如ZGbx)而不是设备蓝牙名称?不过我对此一点也不确定。无论如何,如果这些是附近连接自己的特殊令牌,那么它为什么会发出有关它的警告消息呢?


[免责声明:我从事“附近连接”工作]我可以尝试提供帮助。

STATUS_ALREADY_CONNECTED_TO_ENDPOINT:如果您在与给定端点有任何待定 (onConnectionInitiated) 或已建立 (onConnectionResult) 连接时调用“requestConnection”,则会发生这种情况。将您的日志语句移至前面的 onConnectionInitiated,您应该明白为什么我们会抛出此错误。

STATUS_BLUETOOTH_ERROR:蓝牙出现问题。手机可能处于不良状态。这种情况(希望)不应该经常发生。但如果您确实想要修复,请在重新尝试 requestConnection 之前停止广告和发现。当附近的连接检测到此错误时,它会切换蓝牙,但前提是没有其他情况发生。

STATUS_ENDPOINT_IO_ERROR:我们与其他设备失去了连接。发生这种情况的原因有多种(他们可能走得太远、蓝牙不稳定、设备停止响应等)。如果你是在有联系的情况下发现的,请避免这种情况。发现在电话上可能会很困难,最好的情况是会减少带宽,最坏的情况会导致连接中断。

STATUS_ERROR:出现了与其他错误代码不太相符的问题。这是一个包罗万象的东西。这通常在 onConnectionResult(FAILED) 中返回,以通知您在 onConnectionInitiated 和等待双方接受连接之间出现了问题。

我们还在即将发布的版本中降低了“无法反序列化蓝牙设备名称”的日志严重性,因为它并不是真正的警告。就像你说的;当我们在发现时看到非“附近连接”设备时的预期行为。

如果您仍然发现问题,请告诉我们您正在使用哪些设备,我们一定会将它们添加到我们的测试套件中。

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

附近连接 2.0 中的错误代码 的相关文章

  • 未捕获的 ReferenceError: myFunction 未在 null:1 处定义 Web 视图中的 Android 异常

    我正在从活动中调用 javascript 函数 但我得到了Uncaught ReferenceError myFunction is not defined at null 1错误 这是我的文件 MainActivity java pack
  • 代码如何从 Android Gallery 加载图像

    我有用于从图库加载图像的代码 但我真的不明白它是如何工作的 这是代码 Override protected void onActivityResult int requestCode int resultCode Intent data s
  • 使用 android 将图像上传到 Flickr

    我需要将 Flickr 与 android 集成 我已完成身份验证 我需要将图像上传到 flickr 但我不知道如何执行相同操作 我参考文件 http www flickr com services api upload api html
  • Android Volley:意外响应代码 405

    我的 Android Volley JsonObjectRequest 遇到 onErrorResponse 并出现以下问题 BasicNetwork performRequest Unexpected response code 405
  • React-Native 中的导航抽屉

    我是反应原生的新手 不介意我问一个基本问题 我想知道 实现抽屉式导航的分步过程是什么 推荐链接这个链接 https github com react native community react native side menu usage
  • 从txt文件中读取数据而不下载它?

    我想从提供的文本文件中解析信息 有没有一种方法可以在应用程序中执行此操作 而无需先下载文件 以某种方式传输文本内容 打开到 URL 的 Http 连接 使用内置 HttpURLConnection 或使用 commons httpclien
  • 检测Android N版本代码

    是否可以检测用户是否运行 Android N 我有一台装有 Android N 开发者预览版的 Nexus 6 如果我尝试获取构建版本Build VERSION SDK INT 它返回 23 等于 Android Marshmallow Q
  • Android 偏好设置中的“是”或“否”确认[重复]

    这个问题在这里已经有答案了 我需要在 设置 中实现 重置 选项 单击该设置后 将打开一个简单的对话框 要求确认 我看过了DialogPreference但我似乎无法在任何地方找到好的解决方案或教程 有人可以帮我吗 我是初学者 想法甚至代码都
  • Android 中的处理程序到处理程序与 Messenger 到 Messenger 通信

    问题 使用起来是否 更好 更快且开销更少 Handler http developer android com reference android os Handler html与使用 Handler 通信相比信使 http develop
  • 在 Unity 中构建 apk 应用程序时包含文件

    在unity中构建apk文件时如何将文件和文件夹添加到apk文件中 我需要的是在Android上安装应用程序后 在应用程序的父目录 android data com company product files 中存在一些文件和文件夹 这是我
  • 我怎样才能实现CoverFlow视图[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想用点线布局实现溢出视图 目前我正在使用 polidea 封面流库 URL github https
  • 在异步请求中使用超时回调

    我之前问过这个问题 但我将用提出的解决方案来完成这个问题 并提出另一个问题 我正在使用这个类来进行异步网络请求 http msdn microsoft com en us library system net webrequest aspx
  • React Native v0.71.8 React-native-vector-icons 你看不到的图标

    我在用react native版本v0 71 8 我安装了react native vector icons库 但图标未显示 似乎链接在最新版本的 React Native 中不再起作用 所以我按照说明进行操作 但它不再编译 出现以下错误
  • 如何在捆绑中存储稀疏数组

    我有一个SparseArray
  • 布局聊天气泡问题:TextView 占满整个屏幕

    我正在研究泡泡聊天 我使用具有两种布局的适配器 一种用于传入消息 另一种用于我的消息 适配器工作正常 我的问题在于传入布局 无法很好地显示传入时间文本 当消息文本增长时 会填满屏幕的整个宽度 并隐藏消息时间的文本 第一个问题 如何才能实现这
  • 通知管理器所需的权限

    我正在尝试使用以下命令将振铃器设置为静音且请勿打扰优先级 AudioManager myAudioMgr AudioManager context getSystemService Context AUDIO SERVICE Notific
  • 如何将 Android 应用程序添加到已在 iOS 应用程序中使用的现有 Firebase 项目?

    我一直在我的 iOS 应用程序中使用 Firebase 项目 我现在想开始为 Android 应用程序使用相同的 Firebase 项目及其所有数据库和存储 在您的应用程序下Overview菜单 你应该按添加另一个应用程序并选择Androi
  • Android IntentService无法实例化类;没有空构造函数

    我有一个MainActivity需要访问在线 API 从而使用网络资源 的类 这需要我在单独的文件中创建的后台线程HttpRequestService java MainActivity java public class MainActi
  • 如何像UCBrowser一样使用webview打开url

    我是安卓新手 我正在尝试制作一个示例应用程序来在 webview 中打开网站 问题是 网站以桌面模式打开 如何才能像UC浏览器 手机模式 一样打开网站 尝试这个 它应该有效 webview1 getSettings setJavaScrip
  • Android 可扩展列表视图随机播放子项

    你好 我正在使用 Android Expandable listview 并用不同的视图在其中膨胀子视图 我遇到的问题是 当我展开视图然后打开另一个父视图时 布局中的子视图会变得混乱并在代码中膨胀错误的布局 这是我的两个项目的示例代码 这是

随机推荐

  • 在JSF2中,如何知道复合组件是否有子组件?

    我正在编写一个复合组件 您有一个名为 的特殊标签
  • 获取 Android 蓝牙设备的重命名名称

    我的 Android 手机允许我重命名已配对的设备 方法是转至 设置 gt 无线和网络 gt 蓝牙 活动页面 然后单击已配对蓝牙设备右侧的设置按钮 但是 当我查询带有以下内容的绑定设备列表时蓝牙适配器 getBondedDevices 函数
  • 如何区分日志文件中的 log4j 会话和同一 Web 应用程序的副本?

    只有一个文件 它是在 Web 应用程序副本运行时同时写入的 如何从其他日志行中仅过滤一条会话日志消息 使用具有 NDC 或 MDC 信息的 servlet 过滤器是我见过的最好方法 两者的快速比较可以在http wiki apache or
  • IL 中的 ldsfld 和 ldstr 有什么区别?

    我读过一些关于 String Empty 与 的文章 我也自己做了测试 它们之间的区别如下 字符串 空 L 0001 ldsfld string mscorlib System String Empty L 0001 ldstr 在我与朋友
  • 如何删除python3中的b符号

    如何去除bpython3脚本中的符号 import subprocess get data subprocess check output df k awk print 6 shell True data arr get data spli
  • 如何在 JasperReports 中使用条件 TextField?

    我想要一对取决于值的文本字段 并且 y 值应根据空白空间进行调整 当值为 0 我想隐藏文本字段 IE 我想隐藏staticText和textField如果参数red等于 0 并将蓝色值向上移动 在下面的 jrxml 代码中
  • RVM 的 Rails 脚本分段错误

    我遇到分段错误 应该which ruby返回 usr local bin maletor rails generate mailer ContactMailer Users maletor rvm gems ruby 1 9 2 p0 ge
  • Elixir - https URL 的问题

    我是 Elixir 和 Erlang 的新手 在访问 https URL 时遇到一些问题 我已经尝试过 Elixir 特定的HTTP选项和 Erlang 的 inets module 因此 从 iex 控制台 Interactive Eli
  • 性能差异:std::accumulate vs std::inner_product vs Loop

    今天 我想分享一些在我尝试实现这个简单操作时令我震惊的事情 我发现执行相同操作的不同方法 通过使用std inner product 实现谓词并使用std accumulate功能 使用 C 风格的循环 我想通过使用 Quick Bench
  • ggplot2 条形图中的订单条形图

    我正在尝试制作一个条形图 其中最大的条形最接近 y 轴 最短的条形最远 所以这有点像我的桌子 Name Position 1 James Goalkeeper 2 Frank Goalkeeper 3 Jean Defense 4 Stev
  • CKEditor 和转义元素

    我用过CKEditor用于更新CMS我的网站上的内容 我还使用 FontAwesome 其中包括一组精美的图标 可以像这样显示 i class icon envelope i 问题是 CKEditor 逃脱了这个i标签在客户端 我在源模式下
  • html5 window.localStorage.getItem Item 获取以以下开头的键

    我怎样才能使用 window localStorage getItem 指定 localstarage 中以字符串开头的项目 QQ 在我的例子中 密钥可以是 QQ 3位数字 所以我只需要指定它以字符串开头 QQ 您不需要 获取所有项目并单独
  • SSRS在报告中显示没有记录,但查询返回结果

    我有一个关于 SSRS 的问题 我正在使用 MSSQL Server Management Studio 2012 和 BIDS Visual Studio 2008 进行报表设计 我有一个包含一些多值参数的报告和一个存储过程 其中返回记录
  • 数十亿行的最佳数据存储

    我需要能够存储数十亿条记录 一年约 30 亿 月 的少量数据 大约 50 75 字节 唯一的要求是对具有相同 GUID 的所有记录进行快速插入和快速查找 并且能够从 net 访问数据存储 我是一名 SQL Server 人员 我认为 SQL
  • 在 Pyside 中,为什么在处理信号后发出一个 > 0x7FFFFFFF 的整数会导致“OverflowError”?

    我正在尝试使用具有 0 2 32 1 范围内的大整数的信号 槽 我发现了一些奇怪的事情 一旦我发出 gt 7FFFFFFF 边界 我就会抛出 OverflowError 异常after插槽已运行 如果我或 QT 在另一种语言 如 C 或 C
  • webpack html-loaders 小写 Angular 2 内置指令

    我使用 html loader 来加载我的 html 模板 并使用 file loader 来加载模板中的图像 这在开发中运行得很好 但是当我运行 build prod 并运行输出时 我收到模板解析错误 看来所有 Angular2 内置指令
  • 雅虎财经股票报价API

    有没有办法从 yahoo api 获取 json 格式的历史股票价格 我想使用 REST 因为它更轻量 用一个具体的例子来跟进 user586050 的答案 您可以使用YQL此请求的 yahoo finance historical 数据表
  • 动态添加自定义元素到 DOM 后,如何让 Aurelia 渲染我的视图?

    当在 DOM 中创建自定义元素并添加实现 aurelia 框架可绑定的相应视图模型时 我的视图呈现完美 DOM 中的自定义元素如下
  • 是否可以对字符串类型使用两个记录助手?

    我创建这个助手是为了向string type type AStringHelper record helper for string function Invert string overload function InvertMe str
  • 附近连接 2.0 中的错误代码

    我一直在尝试新的安卓 附近连接 v2 0API 我的大多数设备现在可以在大多数时间相互通信 但我也得到了很多错误代码尝试连接时返回 检查status getStatusCode 在我的程序中 我可以看到以下返回码 STATUS ALREAD