首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SM-G970N( BluetoothLeScanner S10e)中未调用Galaxy

SM-G970N( BluetoothLeScanner S10e)中未调用Galaxy
EN

Stack Overflow用户
提问于 2019-06-28 14:43:33
回答 1查看 157关注 0票数 0

我开发了一个包含各种功能的应用程序。这个应用程序在我的开发手机上运行良好。但当我在三星galaxy S10e上使用这款应用时,蓝牙无法正常工作。我发现BluetoothLeScanner没有被调用。我的开发手机是galaxy S8,它的版本是Android9.0(Pie),API28。另一款低版本的开发手机(如galaxy 5,galaxy note 4)也运行良好。

但是galaxy S10e和galaxy S8(Android9.0Pie,API28)是相同的操作系统。我想知道为什么这个应用程序在galaxy S10e上不能很好地运行。

我就是那样声明许可的

代码语言:javascript
运行
复制
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

BluetoothLeScanenr在这里被调用。

代码语言:javascript
运行
复制
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
public boolean BleDeviceScan(boolean enable)
{
    logD(TAG, "BleDeviceScan ( " + enable + " )");
    if(mBluetoothAdapter == null)
    {
        return false;
    }
    logD(TAG, "mBluetoothAdapter : " + mBluetoothAdapter.toString());
    if(mBluetoothAdapter.isEnabled())
    {
        if (enable)
        {
            Log.d(TAG, "BleDeviceScan Build.VERSION.SDK_INT < MIN_SDK_INT - ELSE");

            timerFlag = true;
            timer = new Timer();
            bleTimer();

            mLEScanner.startScan(filters,   settings,   mScanCallback);
            mListener.bleScanStart();
        }
        else
        {
            deviceShowCount = 0;
            timerFlag = false;

            bHandler.obtainMessage(1).sendToTarget();

            mLEScanner.stopScan(mScanCallback);
            mListener.bleScanStop();
        }
        logD(TAG, "BleDeviceScan Fin");
        return true;
    }
    return false;
}

在galaxy S10e中不会调用此函数。

代码语言:javascript
运行
复制
mLEScanner.startScan(filters,   settings,   mScanCallback);

我应该声明一些在galaxy S10e上使用BluetoothLeScanner的东西吗?有什么问题吗?

EN

回答 1

Stack Overflow用户

发布于 2019-06-28 18:45:59

根据您的描述,扫描不会启动,因为mBluetoothAdapter.isEnabled()始终返回false。你能证实这是真的吗?

如果上述情况属实,设备上的设置是否显示蓝牙已打开?如果是,可以使用LightBlueBeaconScope等现成的应用程序检测BLE设备

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56802082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档