mirror of
https://codeberg.org/Freeyourgadget/Gadgetbridge
synced 2024-10-06 21:27:36 +02:00
Device UM25C: fixed disconnection scenario
This commit is contained in:
parent
8672dcac3c
commit
6f7844418e
@ -77,52 +77,11 @@ public class UM25Coordinator extends AbstractBLEDeviceCoordinator {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
|
||||||
@Override
|
|
||||||
public Class<? extends Activity> getPairingActivity() {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean supportsActivityDataFetching() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean supportsActivityTracking() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public SampleProvider<? extends ActivitySample> getSampleProvider(GBDevice device, DaoSession session) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean supportsFindDevice() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public InstallHandler findInstallHandler(Uri uri, Context context) {
|
public InstallHandler findInstallHandler(Uri uri, Context context) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean supportsScreenshots(final GBDevice device) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getAlarmSlotCount(GBDevice device) {
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean supportsHeartRateMeasurement(GBDevice device) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getManufacturer() {
|
public String getManufacturer() {
|
||||||
return "Ruideng";
|
return "Ruideng";
|
||||||
@ -138,21 +97,6 @@ public class UM25Coordinator extends AbstractBLEDeviceCoordinator {
|
|||||||
return DataActivity.class;
|
return DataActivity.class;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean supportsCalendarEvents() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean supportsRealtimeData() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean supportsWeather() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getBatteryCount() {
|
public int getBatteryCount() {
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -68,6 +68,8 @@ public class UM25Support extends UM25BaseSupport {
|
|||||||
|
|
||||||
private ByteBuffer buffer = ByteBuffer.allocate(PAYLOAD_LENGTH);
|
private ByteBuffer buffer = ByteBuffer.allocate(PAYLOAD_LENGTH);
|
||||||
|
|
||||||
|
ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1);
|
||||||
|
|
||||||
private static final Logger logger = LoggerFactory.getLogger(UM25Support.class);
|
private static final Logger logger = LoggerFactory.getLogger(UM25Support.class);
|
||||||
|
|
||||||
SharedPreferences preferences;
|
SharedPreferences preferences;
|
||||||
@ -142,19 +144,20 @@ public class UM25Support extends UM25BaseSupport {
|
|||||||
super.dispose();
|
super.dispose();
|
||||||
LocalBroadcastManager.getInstance(getContext())
|
LocalBroadcastManager.getInstance(getContext())
|
||||||
.unregisterReceiver(resetReceiver);
|
.unregisterReceiver(resetReceiver);
|
||||||
|
executor.shutdown();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void startLoop(){
|
private void startLoop(){
|
||||||
ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1);
|
executor.scheduleWithFixedDelay(this::sendReadCommand, 0, LOOP_DELAY, TimeUnit.MILLISECONDS);
|
||||||
executor.scheduleWithFixedDelay(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
sendReadCommand();
|
|
||||||
}
|
|
||||||
}, 0, LOOP_DELAY, TimeUnit.MILLISECONDS);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendReadCommand(){
|
private void sendReadCommand(){
|
||||||
|
if(!getDevice().isConnected()){
|
||||||
|
logger.debug("device disconnected, stopping executor");
|
||||||
|
executor.shutdown();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
logger.debug("sending read command");
|
logger.debug("sending read command");
|
||||||
buffer.reset();
|
buffer.reset();
|
||||||
new TransactionBuilder("send read command")
|
new TransactionBuilder("send read command")
|
||||||
|
Loading…
Reference in New Issue
Block a user