Bluetoothデバイスとペアリングするために位置情報サービスをオンにする必要があるのはなぜですか?


16

Samsung 6.0.1を搭載したSamsung Galaxy S6をBluetooth対応デバイスに接続しようとすると、「位置情報サービス」を有効にするよう指示されます。

これについて不平を言うと、ソフトウェアベンダーは、「Bluetooth LEテクノロジーに影響を与えるGoogle Android APIの最新のアップデートでは、アプリを使用するために位置情報の許可が必要です」と答えました。

私はこれの必要性を理解できません。

この議論これについて話します。テクニカルリファレンスは、アプリケーションが特定の持っている必要がありますと言う権限をロケーションサービスがアクティブであること、ありません。

BluetoothおよびWi-Fiスキャンを介して近くの外部デバイスのハードウェア識別子にアクセスするには、アプリにACCESS_FINE_LOCATIONまたはACCESS_COARSE_LOCATION権限が必要です。

質問:これは、ソフトウェアベンダーの声明が間違っていることを意味しますか?


許可システムは、MMの再構築によって完全に完全に停止します(説明では、「Bluetoothビーコン」を念頭に置いており、これを使用して位置を特定できます)。私の理解では、あなたの疑いは正当化され、ベンダーの声明は間違っています。Bluetoothにアクセスするにはアプリが許可を必要とします。しかし、ハードウェアを見つけるために位置情報サービスが必要な場合(「2番目のはんだ接合部を右に曲がって、ゲート3でトランジスタを通過させる」)、私は驚くでしょう。そのために位置情報サービスを有効にする必要があるとは思いませんが、確認するMMデバイスはありません。
イジー

回答:


6

Bluetoothに関する私の理解では、Bluetoothを使用するアプリケーションは、ペアリングのためにデバイスのMACアドレスに直接アクセスできます。この回答ではこれを想定します。

WiFiまたはBluetoothトランスミッタのMACアドレスを読み取ることができる場合、デバイスを見つけることができます。これがWiFi / Bluetoothロケーションの仕組みです。送信機のMACアドレスをリッスンし、巨大なグローバルデータベースでこれらを検索します。

したがって、Bluetoothとデータ接続を使用するアプリケーションは、理論的にはデバイスの位置を特定できます。これが実際に可能かどうかはわかりません。Bluetoothには、WiFiと同じ範囲と半永久的なアクセスポイントインフラストラクチャがありません。

位置情報サービスにBluetoothへのアクセスを要求することにより、ユーザーは、Bluetoothを使用するときに位置情報が漏洩する可能性があることを確実に理解できます。Marshmallowより前のバージョンのAndroidでは、ユーザーは位置情報サービスを有効にせずにBluetoothを使用できましたが、位置情報が漏洩する可能性がありました。これらの古いバージョンでは、WiFiスキャンを実行して、位置情報サービスが有効になっていないMACアドレスを見つけることもできました。これは、位置情報が漏洩する可能性があることを意味します。位置情報サービスでBluetoothを使用できるようにするための要件は、位置情報を無効にするユーザーが自分の位置情報を非公開にすることです。

私はこの問題をバグではなく設計上の問題として特徴付けます。バグはおそらく修正可能ですが、位置情報を漏らさずにBluetoothを使用できるかどうかは明確ではありません。Bluetoothは、だれもがWiFiおよびBluetoothロケーションサービスを検討する前に作成されました。


2

ベンダーは正しいので、位置情報サービスを有効にしてWiFiまたはBluetooth LEデバイスをスキャンする必要があります。

詳細については、バグ#185370を参照してください。Googleは「将来のリリース」で修正したと述べたが、バグに関するコメントによると、Android 7ではまだ修正されていない。


編集:以前に、位置情報サービスは、スキャンを開始するアプリがバックグラウンドで実行されている場合にのみ必要であると述べました。ソースコードは、これがAPIターゲットがAndroid Mより小さい場合にのみ当てはまることを示しています。


Androidのバグの場合、ベンダーが正しいのはなぜですか?彼らは答えている必要があります:「それはAndroidのバグだ」
GUIジャンキー

アプリの外部でデバイスをbluetoothにリンクすることは可能ですか?
GUIジャンキー

ベンダーの声明が間違っているかどうか尋ねました。間違いではありません。アプリに場所の許可を与える必要があります。さらに、バグのため、位置情報サービスを有効にする必要があります
jomo
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.