Commit eeddb878 by onuma

133エラーで10回リトライ機能を削除した。

parent d33d58a0
...@@ -67,17 +67,17 @@ public class BleManagerUtil { ...@@ -67,17 +67,17 @@ public class BleManagerUtil {
// デバイスと離れて応答がなく、タイムアウトになる場合:8 // デバイスと離れて応答がなく、タイムアウトになる場合:8
// デバイスと接続が切れた場合のメッセージコード:19 // デバイスと接続が切れた場合のメッセージコード:19
if (status == 133 || status == 62 || status == 8 || status == 19) { // 接続失敗 if (status == 133 || status == 62 || status == 8 || status == 19) { // 接続失敗
if (status == 133) { // if (status == 133) {
if (retryCount < RETRY_MAX) { // if (retryCount < RETRY_MAX) {
retryCount++; // retryCount++;
new Handler(Looper.getMainLooper()).postDelayed(new Runnable() { // new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
@Override // @Override
public void run() { // public void run() {
mBluetoothGatt = mDevice.connectGatt(mContext, false, mGattcallback, TRANSPORT_LE); // mBluetoothGatt = mDevice.connectGatt(mContext, false, mGattcallback, TRANSPORT_LE);
} // }
}, 1500); // }, 1500);
} // }
} // }
runOnUiThread( new Runnable() { runOnUiThread( new Runnable() {
@Override @Override
public void run() { public void run() {
...@@ -87,6 +87,8 @@ public class BleManagerUtil { ...@@ -87,6 +87,8 @@ public class BleManagerUtil {
Logger.e(TAG,"onConnectionStateChange status = " + status); Logger.e(TAG,"onConnectionStateChange status = " + status);
} }
}); });
gatt.disconnect();
gatt = null;
return; return;
} }
...@@ -301,8 +303,10 @@ public class BleManagerUtil { ...@@ -301,8 +303,10 @@ public class BleManagerUtil {
// 切断 // 切断
public void disconnect() { public void disconnect() {
Logger.d(TAG,"disconnect");
if(mBluetoothGatt == null) { if(mBluetoothGatt == null) {
Logger.d(TAG,"already gatt is null");
return; return;
} }
...@@ -313,7 +317,7 @@ public class BleManagerUtil { ...@@ -313,7 +317,7 @@ public class BleManagerUtil {
// ②「接続可能範囲から外れた切断」は、内部処理でmBluetoothGatt.disconnect()処理が実施される。 // ②「接続可能範囲から外れた切断」は、内部処理でmBluetoothGatt.disconnect()処理が実施される。
// 切断時のコールバックでmBluetoothGatt.connect()を呼んでおくと、接続可能範囲に入ったら自動接続する。 // 切断時のコールバックでmBluetoothGatt.connect()を呼んでおくと、接続可能範囲に入ったら自動接続する。
mBluetoothGatt.disconnect(); mBluetoothGatt.disconnect();
mBluetoothGatt.close(); //mBluetoothGatt.close();
mBluetoothGatt = null; mBluetoothGatt = null;
mListener = null; mListener = null;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment