这是一个更普遍的问题,但是我们可以在服务中使用Nearby Connections API到什么程度?
我注意到,当应用程序失去焦点时,发现和配对仍在工作,因此是否可以将整个连接客户端提取到前台,甚至是在应用程序本身不需要运行时运行的后台服务?
android android-service kotlin google-nearby google-nearby-connections
Google刚刚在8月份发布了Nearby Share功能。我对它的技术方面很感兴趣,但是我还没有找到任何关于Nearby Share技术细节的文章。有什么提示吗?
我还注意到 Google 已经在 Android 上提供了附近连接 API。这让我不禁好奇他们之间到底有没有关系?例如,附近共享是使用附近连接 API 实现的吗?
(是的,我看到前者是一个成熟的、随时可用的功能,后者是一个供开发人员使用的 API,支持的不仅仅是文件共享。但它们的名字看起来很相似,它们使用的通信方法也很相似,如蓝牙、BLE 和 P2P wifi。)
附近共享有时会使用蓝牙传输文件,因此速度非常慢。有时传输超过 100 MB 的文件根本不方便。最初我认为蓝牙仅用于握手目的。但后来我意识到这些文件本身是通过蓝牙传输的。我很好奇为什么文件可以通过 wifi 直接传输,为什么要通过蓝牙传输。许多第三方应用程序(包括 Google Files)都使用 wifi direct 来传输文件。那么为什么像附近共享这样的内置功能应该使用蓝牙。附近共享本身的唯一目的是在没有互联网的情况下通过 wifi direct 实现快速文件传输。因此,如果文件是通过蓝牙传输的,则使用附近共享是没有意义的。
我也很想知道附近共享中存在的各种文件传输模式。有三种模式:数据、仅 Wifi 和无互联网。我真的很想知道为什么附近共享用于在没有互联网的情况下传输文件时需要互联网连接来传输文件。它是否用于 Web RTC 中的握手目的?
android bluetooth wifi-direct google-nearby google-nearby-connections
我正在开发一个使用附近连接 API 和基本 P2P 策略的应用程序。突然间,很奇怪的是,我无法在我的 Pixel 3a 上宣传和发现配备最新 Android 12 和 Play 服务的设备。OnFailureListeners
抛出这些异常:
8037: unknown status code: 8037
8038: unknown status code: 8038
事实上,它们在文档和源代码中找不到。我还检查了谷歌的“剪刀石头布”官方示例,它抛出了相同的错误代码。
当然,我重新安装了应用程序并重新启动并更新了我的手机。编辑:我也恢复了出厂设置,但没有帮助。但当我使用 Android Flash Tool 降级到最新的 Android 11 后,它又开始工作了。此外,使用不同的手机在 Android 11、10 和 9 上一切仍然运行良好。
有什么想法导致这个问题吗?过去两周一直运行良好,今天停止运行。我相信它需要对源代码进行一些深入的调查(Xlythe,如果我可以寻求你的帮助,那就太好了)。
android google-play-services google-nearby google-nearby-connections