From 4203968ed148a7e56ab460c8d6edb744cb1645e4 Mon Sep 17 00:00:00 2001 From: 陈奇 <1650699704@qq.com> Date: Fri, 07 Dec 2018 17:16:54 +0800 Subject: [PATCH] [*]优化微信登陆用户信息 --- app/src/main/java/com/moral/yunfushao/ble/BluetoothService.java | 60 ++++++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 46 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/com/moral/yunfushao/ble/BluetoothService.java b/app/src/main/java/com/moral/yunfushao/ble/BluetoothService.java index b5bc98a..58ce82d 100644 --- a/app/src/main/java/com/moral/yunfushao/ble/BluetoothService.java +++ b/app/src/main/java/com/moral/yunfushao/ble/BluetoothService.java @@ -6,6 +6,7 @@ import android.bluetooth.BluetoothGattCharacteristic; import android.bluetooth.BluetoothGattService; import android.content.Intent; +import android.content.ServiceConnection; import android.os.Binder; import android.os.Handler; import android.os.IBinder; @@ -39,18 +40,21 @@ @Override public void onCreate() { - if( MainApp.theApp.bleManager!=null){ + System.out.println("chenqi onCreate service" + MainApp.theApp.bleManager); + if (MainApp.theApp.bleManager != null) { bleManager = MainApp.theApp.bleManager; - }else{ + } else { bleManager = new BleManager(MainApp.theApp); MainApp.theApp.bleManager = bleManager; } +// bleManager.setMtu(128);//��������������������������������������� bleManager.enableBluetooth(); } @Override public void onDestroy() { super.onDestroy(); + System.out.println("chenqi onDestroy service "); bleManager = null; mCallback = null; mCallback2 = null; @@ -61,11 +65,20 @@ return mBinder; } + + @Override + public void unbindService(ServiceConnection conn) { + System.out.println("chenqi unbindService service"); + super.unbindService(conn); + } + @Override public boolean onUnbind(Intent intent) { - bleManager.closeBluetoothGatt(); + System.out.println("chenqi unbinding service"); + closeConnect(); return super.onUnbind(intent); } + public class BluetoothBinder extends Binder { public BluetoothService getService() { @@ -144,8 +157,8 @@ } public void cancelScan() { - if(bleManager!=null) - bleManager.cancelScan(); + if (bleManager != null) + bleManager.cancelScan(); } public void connectDevice(final ScanResult scanResult) { @@ -153,21 +166,29 @@ mCallback.onConnecting(); } - bleManager.connectDevice(scanResult, true, new BleGattCallback() { + System.out.println("chenqi blename old = " + MainApp.theApp.sharedPreferencesUtil.getBLE()); + + System.out.println("chenqi blename = " + scanResult.getDevice().getAddress()); + + openBlueTooth(); + + bleManager.connectDevice(scanResult, false, new BleGattCallback() { @Override public void onFoundDevice(ScanResult scanResult) { + System.out.println("chenqi blueTooth connect state -> onFoundDevice"); BluetoothService.this.name = scanResult.getDevice().getName(); BluetoothService.this.mac = scanResult.getDevice().getAddress(); } @Override public void onConnecting(BluetoothGatt gatt, int status) { - + System.out.println("chenqi blueTooth connect state -> onConnecting"); } @Override public void onConnectError(BleException exception) { + System.out.println("chenqi blueTooth connect state -> onConnectError"); runOnMainThread(new Runnable() { @Override public void run() { @@ -180,11 +201,14 @@ @Override public void onConnectSuccess(BluetoothGatt gatt, int status) { - //���������������������������������MAC - MainApp.theApp.sharedPreferencesUtil.saveBLE(gatt.getDevice().getAddress()); + System.out.println("chenqi blueTooth connect state -> onConnectSuccess"); + //���������������������������������MAC + MainApp.theApp.sharedPreferencesUtil.saveBLE(gatt.getDevice().getAddress()); } + @Override public void onServicesDiscovered(final BluetoothGatt gatt, int status) { + System.out.println("chenqi blueTooth connect state -> onServicesDiscovered"); BluetoothService.this.gatt = gatt; runOnMainThread(new Runnable() { @Override @@ -198,6 +222,7 @@ @Override public void onDisConnected(BluetoothGatt gatt, int status, BleException exception) { + System.out.println("chenqi blueTooth connect state -> onDisConnected" + exception); runOnMainThread(new Runnable() { @Override public void run() { @@ -550,12 +575,15 @@ public void scanAndConnect5(String mac) { resetInfo(); + System.out.println("chenqi mCallback" + mCallback); + if (mCallback != null) { mCallback.onStartScan(); } - bleManager.scanMacAndConnect(mac, 5000, false, new BleGattCallback() { + openBlueTooth(); + bleManager.scanMacAndConnect(mac, 5000, false, new BleGattCallback() { @Override public void onFoundDevice(ScanResult scanResult) { runOnMainThread(new Runnable() { @@ -580,7 +608,6 @@ @Override public void onConnecting(BluetoothGatt gatt, int status) { - } @Override @@ -597,11 +624,11 @@ @Override public void onConnectSuccess(BluetoothGatt gatt, int status) { - } @Override public void onDisConnected(BluetoothGatt gatt, int status, BleException exception) { + System.out.println("chenqi onConnectError " + exception.getDescription()); runOnMainThread(new Runnable() { @Override public void run() { @@ -660,7 +687,8 @@ } public void closeConnect() { - bleManager.closeBluetoothGatt(); + if (bleManager != null) + bleManager.closeBluetoothGatt(); } @@ -727,5 +755,9 @@ } } - + public void openBlueTooth() { + if (bleManager != null) { + bleManager.enableBluetooth(); + } + } } -- Gitblit v1.8.0