LoginSignup
1
0

More than 1 year has passed since last update.

Android12でBeaconが取得できない

Posted at

結論

BLUETOOTH_SCANのパーミッションを要求する

AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.hogehoge.androidbeaconapp">
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
    <uses-permission android:name="android.permission.BLUETOOTH_SCAN" /> <-追加

    <application
        android:allowBackup="true"

必要であればrequestPermissionsにも追加

詳細

iBeaconを購入したので試しにログを出力するためにサンプルアプリを作成。パーミッション周りはaltbeaconの公式サイトのこちらを参考に設定してみたがなぜか動かない。
ログを漁ってみたところ以下のようなメッセージが表示された。

E/ScanHelper: SecurityException stopping Android O background scanner
E/CycledLeScannerForLollipop: Cannot start scan.  Security Exception: Need android.permission.BLUETOOTH_SCAN permission for android.content.AttributionSource@802cd449: GattService registerScanner

Android公式サイトを参照するとAPIレベル31から新しいBluetooth権限が追加されていることがわかりますね。
https://developer.android.com/about/versions/12/features/bluetooth-permissions?hl=ja

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0