android - BluetoothA2dpSink 和BluetoothAvrcpController 类无法访问,如何添加到SDK?

标签 android android-bluetooth

我的项目需要构建以下类:

  • 蓝牙A2dpSink

  • 蓝牙AvrcpController

根据this & this ,这些类是 Android SDK 的一部分,但默认情况下处于禁用状态,因为大多数手机上不使用这些蓝牙配置文件。我们有适合我们设备的定制 ROM,因此这些蓝牙配置文件可以在我们的设备上正常工作。

上述问题的答案表明您可以修改 SDK 以包含缺少的类,以便 Android Studio 能够识别它们并进行构建。所以我的问题是:

  1. 如何将这些类添加到 SDK,即使它们已经存在? (C:\Users\USERNAME\AppData\Local\Android\sdk\sources\android-23\android\bluetooth) 是他们的位置。
  2. 如何实际修改 SDK 并重新编译它?我发现this问题,但它是几年前的问题,并且指向了几年前的说明。

最佳答案

这些类似乎不是公开的,您可能必须通过反射来访问它们(风险自负)。此外,BluetoothA2dpSink 的文档指出:

BluetoothA2dpSink is a proxy object for controlling the Bluetooth A2DP Sink * Service via IPC. Use {@link BluetoothAdapter#getProfileProxy} to get * the BluetoothA2dpSink proxy object.

关于android - BluetoothA2dpSink 和BluetoothAvrcpController 类无法访问,如何添加到SDK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43763552/

相关文章:

Android 和 RESTful 服务

android - android对话框中的非法参数异常

Android 3.0 WebView 崩溃

java - 无法进入下一页

java - Android Studio 不兼容的类型

android - Android消息传递应用程序中多个附件的幻灯片

android - 如何从一个字节中提取一个位并将其显示在 Android 的 TextView 上?

bluetooth - Android 蓝牙 LE 聊天示例

android - RXAndroid 编写嵌套订阅的更好方法

android - 如何拦截 Parrot B350-XT 蓝牙耳机的蓝牙按钮事件?