Arduinoに接続したセンサーからアナログデータを取得し,Androidにデータを渡し,時刻とともにSQLiteで作ったデータベースに保存するという物を作っています.
通信にはBluetoothを利用しており,メインとは別のThreadでBluetoothに関わる処理を行っています.
【問題】
DebugのためPCとスマートフォンをつないでいるときは正常に動作するのですが,Run’App’した後スマートフォン単体で操作すると,正常に動作しません.
BluetoothによるArduino,Android間の接続はできており,情報も取得しているようなのですが,Androidの方でデータベースに保存した後,一覧画面へと遷移しようとすると画面が暗転した状態になり,処理に時間がかかっているため終了するかといった表示が出ます.
Debugの際にでたログとしては,自分で記載した出力値を見るためのログの他に以下のようなものが出ており,BluetoothとInputStreamの読み込み周辺に問題が出ているように見えるのですが,なぜだかわかりません.
E/BluetoothSocket: java.io.IOException: Operation Canceled at android.bluetooth.BluetoothSocket.readNative(Native Method) at android.bluetooth.BluetoothSocket.read(BluetoothSocket.java:386) at android.bluetooth.BluetoothInputStream.read(BluetoothInputStream.java:96) at java.io.InputStream.read(InputStream.java:163) at com.example.android.painrecordbluetooth.MainActivity.run(MainActivity.java:192) at java.lang.Thread.run(Thread.java:856)
解決策または,どこで問題が起きていそうか指摘していただければと思います.
よろしくお願いします.
あなたの回答
tips
プレビュー