Zepp OS: Improve gpx upload support auto-detection

This commit is contained in:
José Rebelo
2025-04-05 21:23:45 +01:00
parent 1732564c1e
commit 2996474177
15 changed files with 18 additions and 25 deletions
@@ -50,7 +50,7 @@ public class AmazfitActiveCoordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -55,11 +55,6 @@ public class AmazfitActive2Coordinator extends ZeppOsCoordinator {
return false;
}
@Override
public boolean supportsGpxUploads() {
return true;
}
@Override
public boolean supportsControlCenter() {
return true;
@@ -55,7 +55,7 @@ public class AmazfitActiveEdgeCoordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -51,7 +51,7 @@ public class AmazfitBalanceCoordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -40,7 +40,7 @@ public class AmazfitBip5Coordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -55,7 +55,7 @@ public class AmazfitCheetahProCoordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -50,7 +50,7 @@ public class AmazfitCheetahRoundCoordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -44,7 +44,7 @@ public class AmazfitCheetahSquareCoordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -58,7 +58,7 @@ public class AmazfitGTR4Coordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -51,7 +51,7 @@ public class AmazfitGTRMiniCoordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -40,7 +40,7 @@ public class AmazfitGTS4Coordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -57,7 +57,7 @@ public class AmazfitTRex3Coordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -45,7 +45,7 @@ public class AmazfitTRexUltraCoordinator extends ZeppOsCoordinator {
}
@Override
public boolean supportsGpxUploads() {
public boolean supportsGpxUploads(final GBDevice device) {
return true;
}
@@ -112,11 +112,9 @@ public abstract class ZeppOsCoordinator extends HuamiCoordinator {
}
}
if (supportsGpxUploads()) {
final ZeppOsGpxRouteInstallHandler gpxRouteInstallHandler = new ZeppOsGpxRouteInstallHandler(uri, context);
if (gpxRouteInstallHandler.isValid()) {
return gpxRouteInstallHandler;
}
final ZeppOsGpxRouteInstallHandler gpxRouteInstallHandler = new ZeppOsGpxRouteInstallHandler(uri, context);
if (gpxRouteInstallHandler.isValid()) {
return gpxRouteInstallHandler;
}
final ZeppOsMapsInstallHandler mapsInstallHandler = new ZeppOsMapsInstallHandler(uri, context);
@@ -562,8 +560,8 @@ public abstract class ZeppOsCoordinator extends HuamiCoordinator {
return true;
}
public boolean supportsGpxUploads() {
return false;
public boolean supportsGpxUploads(final GBDevice device) {
return supportsBleFileTransfer(device, "sport");
}
public boolean supportsControlCenter() {
@@ -92,7 +92,7 @@ public class ZeppOsGpxRouteInstallHandler implements InstallHandler {
return;
}
final ZeppOsCoordinator zeppOsCoordinator = (ZeppOsCoordinator) coordinator;
if (!zeppOsCoordinator.supportsGpxUploads()) {
if (!zeppOsCoordinator.supportsGpxUploads(device)) {
installActivity.setInfoText(mContext.getString(R.string.fwapp_install_device_not_supported));
installActivity.setInstallEnabled(false);
return;