首页 > 解决方案 > Android Things Rasperry PI GPS 和蓝牙错误

问题描述

在 Rasperry PI 上的 Android Things 中加载我的应用程序后,我收到一个错误,它显示一条有关“蓝牙已停止”的消息。这发生在注册 GPS 驱动程序之后。它不会影响功能,而且只是第一次。它已经在 xml 中有一些权限

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="com.google.android.things.permission.MANAGE_GNSS_DRIVERS" />
    <uses-permission android:name="com.google.android.things.permission.USE_PERIPHERAL_IO" />

看起来它需要先将端口切换到 GPS 或取消注册蓝牙......顺便说一下,我没有在应用程序中使用蓝牙功能。任何想法?谢谢

if (context.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION)
                != PackageManager.PERMISSION_GRANTED) {
            Log.e(TAG, "No permission");
            return;
        }

        try {
            // Register the GPS driver
            mGpsDriver = new NmeaGpsDriver(context, "UART0", UART_BAUD, ACCURACY);
            mGpsDriver.register(); 

标签: bluetoothgpsandroid-things

解决方案


根据 pinout 文档,这是 Raspberry Pi 的一个已知限制:

Raspberry Pi 具有在各种板功能之间多路复用的引脚。某些板卡功能不能同时使用(例如,启用蓝牙和使用 UART0 端口进行外围 I/O)。

所以可能有一个进程在后台运行,它仍在使用蓝牙并导致驱动程序崩溃。


推荐阅读