mirror of
https://codeberg.org/Freeyourgadget/Gadgetbridge
synced 2024-07-22 14:52:25 +02:00
Intent API: Add dataTypes parameter for activity sync
This commit is contained in:
parent
76d99f1c33
commit
b1a9adadc3
|
@ -24,6 +24,10 @@ import android.content.IntentFilter;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
|
import java.util.Locale;
|
||||||
|
import java.util.regex.Matcher;
|
||||||
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
import nodomain.freeyourgadget.gadgetbridge.GBApplication;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.database.PeriodicExporter;
|
import nodomain.freeyourgadget.gadgetbridge.database.PeriodicExporter;
|
||||||
import nodomain.freeyourgadget.gadgetbridge.model.RecordedDataTypes;
|
import nodomain.freeyourgadget.gadgetbridge.model.RecordedDataTypes;
|
||||||
|
@ -51,9 +55,22 @@ public class IntentApiReceiver extends BroadcastReceiver {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG.info("Triggering activity sync");
|
final int dataTypes;
|
||||||
|
final String dataTypesHex = intent.getStringExtra("dataTypesHex");
|
||||||
|
if (dataTypesHex != null) {
|
||||||
|
final Matcher matcher = Pattern.compile("^0[xX]([0-9a-fA-F]+)$").matcher(dataTypesHex);
|
||||||
|
if (!matcher.find()) {
|
||||||
|
LOG.warn("Failed to parse dataTypesHex '{}' as hex", dataTypesHex);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
dataTypes = Integer.parseInt(matcher.group(1), 16);
|
||||||
|
} else {
|
||||||
|
dataTypes = RecordedDataTypes.TYPE_ACTIVITY;
|
||||||
|
}
|
||||||
|
|
||||||
GBApplication.deviceService().onFetchRecordedData(RecordedDataTypes.TYPE_ACTIVITY);
|
LOG.info("Triggering activity sync for data types {}", String.format("0x%08x", dataTypes));
|
||||||
|
|
||||||
|
GBApplication.deviceService().onFetchRecordedData(dataTypes);
|
||||||
break;
|
break;
|
||||||
case COMMAND_TRIGGER_EXPORT:
|
case COMMAND_TRIGGER_EXPORT:
|
||||||
if (!prefs.getBoolean("intent_api_allow_trigger_export", false)) {
|
if (!prefs.getBoolean("intent_api_allow_trigger_export", false)) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user