当前位置: 首页 > 知识库问答 >
问题:

为什么蓝牙在android中需要DBUS通信方式?

倪德业
2023-03-14

我是Android DBUS的新手,最近我被告知我需要使用DBUS在Android中实现蓝牙,从DBUS留档中我看到DBUS用于两个应用程序之间的通信介质。

  1. 在Android应用程序中,应用程序通信是通过意图进行的,如果是这样,为什么我们需要DBUS来实现蓝牙
  2. 由于DBUS是在套接字上构建的,所以它是两个应用程序之间联网(IP)的通信媒介吗

请纠正我,如果我的理解是错误的,任何更多的信息DBUS以及蓝牙在Android系统中的实施表示感谢。

谢谢

共有2个答案

汤承允
2023-03-14

据我所知,之前的android使用bluez实现蓝牙。bluez的实现依赖于dbus。如果您是应用程序开发人员,大多数情况下您不需要关心蓝牙的内部实现,只需使用级别api和intent

颜功
2023-03-14

对于Android上的任何应用程序级编程,包括蓝牙,您都不需要担心D总线。

关于使用意图的Android应用程序通信,你是对的——意图是Android应用程序开发的基础。

在封面下,Android意图可以使用D-Bus实现,但据我所知,它们不是(如果我错了,请有人纠正我)。不管怎样,你只需要担心这一点,如果你正在做系统级的Android蓝牙开发。

 类似资料:
  • 我想知道android蓝牙通信的通信方式是什么。我的代码基本上遵循这里的开发者指南:http://developer.android.com/guide/topics/connectivity/bluetooth.html如果我按照本指南从设备中读取/写入数据?通信类型是什么?我在网上搜索了一下,它看起来像是串口通信,RS 232。这是正确的吗? 非常感谢。

  • 问题内容: 在Java或Android中,有@Override注释。这是什么意思?我发现它是在方法来自子类或继承接口的方法时使用的,我想进一步了解,其他是@SuppressWarnings及其Anonation,如果是的话,java使用了多少注释以及用于什么目的。 问题答案: 这个问题在这里也很简洁地得到了回答: Android@Override用法 这是一个注释,可以用来告诉编译器和IDE,您打

  • 我想创建一个能够接收音频流的Android应用程序。我曾想过使用A2DP配置文件,但似乎Android不支持A2DP接收器。看起来有很多人在寻找这个问题的解决方案。但是,如果接收一个普通的位流,然后在应用程序中将数据转换成音频呢?我想通过RFCOMM(SPP蓝牙模式)接收PCM或Mp3数据流,然后使用AudioTrack播放。 首先,我如何通过RFCOMM在我的Android手机上接收比特流?是否

  • 将我的Pixel XL升级到Android 10.0版后,只有在打开“位置”的情况下,蓝牙低能量(BLE)扫描才能工作。 到目前为止,这还不是一个问题,它正在运行在Android 9.0、8.0和6.0.1上的多台设备上。 我的应用程序仅使用

  • 有没有办法在Android上ping蓝牙设备?Android中没有连接或配对蓝牙设备,但我事先知道设备的MAC地址和PIN。我试图实现的是ping一个MAC地址列表,看看是否有任何设备在范围内。

  • 我刚刚开发了一个Android应用程序(MINSDKVersion23/TargetSDKVersion29),它可以连接到BluetoothLE设备以定期获取数据。 现在,在MainActivity(不是第一个活动)中,我执行以下注册BroadcastReciever的操作: 当设备连接/发现/datareCieved时执行的所有回调都在StatusActivity中,而不是在BleServic