Roboletric返回null蓝牙管理器

时间:2015-07-30 05:23:20

标签: bluetooth bluetooth-lowenergy robolectric

我曾尝试使用Robollectric测试我的应用程序使用蓝牙。但是当我试图获得蓝牙管理器时,我总是在Roboletric中获得空值。

以下是我在Robolectric的课程中尝试使用蓝牙管理器的方法。

final BluetoothManager bluetoothManager = (BluetoothManager) context.getSystemService(Context.BLUETOOTH_SERVICE);

感觉我在Robolectric的设置中遗漏了一些简单的东西?以下是用于设置课程的公告。

@Config(
 sdk = Build.VERSION_CODES.KITKAT
 , manifest = "src\\main\\AndroidManifest.xml"
)
@RunWith(RobolectricTestRunner.class)

1 个答案:

答案 0 :(得分:2)

<强>更新

如果您使用 Robolectric v3.1 +

,问题和答案已过时

=========================

Robolectric 提供lot of services from the box。但是,BluetoothManager不属于它。我认为这是因为在API18之前我们使用了BluetoothAdapter.getDefaultAdapter()

看起来您的目标是最新的API,而“老”方式不是您的选择。作为测试的变通方法,您可以使用here描述的方法。

我还在Robolectric GitHub页面上创建了issue