1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-06-02 03:16:07 +02:00

Made the scans time out nicely

This commit is contained in:
TaaviE 2020-08-02 04:56:40 +03:00
parent 498c0d42e2
commit 61c74e9b15
3 changed files with 28 additions and 15 deletions

View File

@ -6,9 +6,9 @@ archivesBaseName = 'gadgetbridge-daogenerator'
//version = '0.9.2-SNAPSHOT' //version = '0.9.2-SNAPSHOT'
dependencies { dependencies {
// compile 'org.greenrobot:greendao-generator:2.2.0' // implementation 'org.greenrobot:greendao-generator:2.2.0'
// compile project(":DaoGenerator") // implementation project(":DaoGenerator")
compile 'com.github.Freeyourgadget:greendao:1998d7cd2d21f662c6044f6ccf3b3a251bbad341' implementation 'com.github.Freeyourgadget:greendao:1998d7cd2d21f662c6044f6ccf3b3a251bbad341'
} }
sourceSets { sourceSets {

View File

@ -373,7 +373,7 @@
<receiver <receiver
android:name=".externalevents.BluetoothStateChangeReceiver" android:name=".externalevents.BluetoothStateChangeReceiver"
android:exported="false" android:exported="true"
android:permission="android.permission.BLUETOOTH,android.permission.BLUETOOTH_ADMIN"> android:permission="android.permission.BLUETOOTH,android.permission.BLUETOOTH_ADMIN">
<intent-filter> <intent-filter>
<action android:name="android.bluetooth.adapter.action.STATE_CHANGED" /> <action android:name="android.bluetooth.adapter.action.STATE_CHANGED" />

View File

@ -135,7 +135,7 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
case BluetoothAdapter.ACTION_DISCOVERY_STARTED: case BluetoothAdapter.ACTION_DISCOVERY_STARTED:
if (isScanning != Scanning.SCANNING_BLE) { if (isScanning != Scanning.SCANNING_BLE) {
if (isScanning != Scanning.SCANNING_BT_NEXT_BLE) { if (isScanning != Scanning.SCANNING_BT_NEXT_BLE) {
isScanning = Scanning.SCANNING_BT; setIsScanning(Scanning.SCANNING_BT);
} }
startButton.setText(getString(R.string.discovery_stop_scanning)); startButton.setText(getString(R.string.discovery_stop_scanning));
} }
@ -532,6 +532,8 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
discoveryFinished(); discoveryFinished();
handler.removeMessages(0, stopRunnable); handler.removeMessages(0, stopRunnable);
} else {
discoveryFinished();
} }
} }
@ -541,7 +543,7 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
private void startOldBTLEDiscovery() { private void startOldBTLEDiscovery() {
LOG.info("Starting old BLE discovery"); LOG.info("Starting old BLE discovery");
isScanning = Scanning.SCANNING_BLE; setIsScanning(Scanning.SCANNING_BLE);
handler.removeMessages(0, stopRunnable); handler.removeMessages(0, stopRunnable);
handler.sendMessageDelayed(getPostMessage(stopRunnable), SCAN_DURATION); handler.sendMessageDelayed(getPostMessage(stopRunnable), SCAN_DURATION);
@ -553,11 +555,11 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
private void stopOldBLEDiscovery() { private void stopOldBLEDiscovery() {
if (adapter != null) { if (adapter != null) {
adapter.stopLeScan(leScanCallback); adapter.stopLeScan(leScanCallback);
setIsScanning(Scanning.SCANNING_OFF);
isScanning = Scanning.SCANNING_OFF;
bluetoothLEProgress.setVisibility(View.GONE);
LOG.info("Stopped old BLE discovery"); LOG.info("Stopped old BLE discovery");
} }
bluetoothLEProgress.setVisibility(View.GONE);
} }
/* New BTLE Discovery uses startScan (List<ScanFilter> filters, /* New BTLE Discovery uses startScan (List<ScanFilter> filters,
@ -566,7 +568,7 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
@RequiresApi(Build.VERSION_CODES.LOLLIPOP) @RequiresApi(Build.VERSION_CODES.LOLLIPOP)
private void startBTLEDiscovery() { private void startBTLEDiscovery() {
LOG.info("Starting BLE discovery"); LOG.info("Starting BLE discovery");
isScanning = Scanning.SCANNING_BLE; setIsScanning(Scanning.SCANNING_BLE);
handler.removeMessages(0, stopRunnable); handler.removeMessages(0, stopRunnable);
handler.sendMessageDelayed(getPostMessage(stopRunnable), SCAN_DURATION); handler.sendMessageDelayed(getPostMessage(stopRunnable), SCAN_DURATION);
@ -600,8 +602,8 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
return; return;
} }
isScanning = Scanning.SCANNING_OFF;
bluetoothLEProgress.setVisibility(View.GONE); bluetoothLEProgress.setVisibility(View.GONE);
setIsScanning(Scanning.SCANNING_OFF);
LOG.debug("Stopped BLE discovery"); LOG.debug("Stopped BLE discovery");
} }
@ -612,7 +614,7 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
*/ */
private void startBTDiscovery(Scanning what) { private void startBTDiscovery(Scanning what) {
LOG.info("Starting BT discovery"); LOG.info("Starting BT discovery");
isScanning = what; setIsScanning(what);
handler.removeMessages(0, stopRunnable); handler.removeMessages(0, stopRunnable);
handler.sendMessageDelayed(getPostMessage(stopRunnable), SCAN_DURATION); handler.sendMessageDelayed(getPostMessage(stopRunnable), SCAN_DURATION);
@ -628,7 +630,7 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
adapter.cancelDiscovery(); adapter.cancelDiscovery();
bluetoothProgress.setVisibility(View.GONE); bluetoothProgress.setVisibility(View.GONE);
isScanning = Scanning.SCANNING_OFF; setIsScanning(Scanning.SCANNING_OFF);
LOG.info("Stopped BT discovery"); LOG.info("Stopped BT discovery");
} }
} }
@ -637,12 +639,21 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
if (isScanning != Scanning.SCANNING_OFF) { if (isScanning != Scanning.SCANNING_OFF) {
LOG.warn("Scan was not properly stopped: " + isScanning); LOG.warn("Scan was not properly stopped: " + isScanning);
} }
startButton.setText(getString(R.string.discovery_start_scanning));
setIsScanning(Scanning.SCANNING_OFF);
} }
private void setIsScanning(Scanning to) {
this.isScanning = to;
if (isScanning == Scanning.SCANNING_OFF) {
startButton.setText(getString(R.string.discovery_start_scanning));
} else {
startButton.setText(getString(R.string.discovery_stop_scanning));
}
}
private void bluetoothStateChanged(int newState) { private void bluetoothStateChanged(int newState) {
discoveryFinished();
if (newState == BluetoothAdapter.STATE_ON) { if (newState == BluetoothAdapter.STATE_ON) {
this.adapter = BluetoothAdapter.getDefaultAdapter(); this.adapter = BluetoothAdapter.getDefaultAdapter();
startButton.setEnabled(true); startButton.setEnabled(true);
@ -650,6 +661,8 @@ public class DiscoveryActivity extends AbstractGBActivity implements AdapterView
this.adapter = null; this.adapter = null;
startButton.setEnabled(false); startButton.setEnabled(false);
} }
discoveryFinished();
} }
private boolean checkBluetoothAvailable() { private boolean checkBluetoothAvailable() {