HaneCa

独り立ちへ向けた長い道

Web Bluetoothの試用感について

投稿日: 2017年6月24日 最終更新日: 2020年4月12日

Web Bluetooth APIが登場して数年経ち、そろそろ利用できるかと思って試用してみました。ブラウザから周辺にあるBluetooth機器の一覧を取得できないかと考えましたが、現在の作りでは実現ができなさそうだということがわかりました。 実際に試した内容は次のようになります。 まず、次のようにJavaScriptに書き実行しました。

function findBleDevices() {
  if (navigator.bluetooth) {
    navigator.bluetooth.requestDevice({acceptAllDevices:true})
    .then(function(device) {
      console.log(device);
    })
    .catch(function(err) {
      console.log(err);
    });
  }
}
findBleDevices();

ここで、「DOMException: Must be handling a user gesture to show a permission request.」というエラーが発生しました。 これはブラウザを表示するとコードが実行されるようにしたことが原因でした。ページを表示した後にボタンを押すなどのアクションをユーザが行ったらコードが実行できるようにすることで解決します。 プログラムが実行された時、ブラウザのアドレスバーにダイアログが現れます。そして、Bluetoothデバイスを検索し始めます。

雑感

想定では、ページを表示した時に周囲にあるBluetooth機器を検索し、そこにあるデバイス一覧に応じてページの表示内容を変えようとしていました。しかし、「ユーザのアクションが必要な点」、「ダイアログが表示される点」が想定と異なるため、今回は利用を見送ることにしました。

参考情報

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください