Removed KMZ export without photos.

This commit is contained in:
Dennis Guse
2025-12-06 09:03:03 +01:00
parent 2f90784442
commit f4073ead63
5 changed files with 9 additions and 39 deletions
@@ -52,7 +52,6 @@ public class ShareContentProvider extends CustomContentProvider {
private static final int URI_GPX = 0;
private static final int URI_KML_WITH_TRACKDETAIL_SENSORDATA = 3;
private static final int URI_KMZ_WITH_TRACKDETAIL_AND_SENSORDATA = 6;
private static final int URI_KMZ_WITH_TRACKDETAIL_SENSORDATA_AND_PICTURES = 7;
private static final int URI_CSV = 8;
@@ -64,7 +63,6 @@ public class ShareContentProvider extends CustomContentProvider {
uriMatcher.addURI(ContentProviderUtils.AUTHORITY_PACKAGE, TracksColumns.TABLE_NAME + "/" + TrackFileFormat.KML_WITH_TRACKDETAIL_AND_SENSORDATA.getPreferenceId() + "/*/*", URI_KML_WITH_TRACKDETAIL_SENSORDATA);
uriMatcher.addURI(ContentProviderUtils.AUTHORITY_PACKAGE, TracksColumns.TABLE_NAME + "/" + TrackFileFormat.KMZ_WITH_TRACKDETAIL_AND_SENSORDATA.getPreferenceId() + "/*/*", URI_KMZ_WITH_TRACKDETAIL_AND_SENSORDATA);
uriMatcher.addURI(ContentProviderUtils.AUTHORITY_PACKAGE, TracksColumns.TABLE_NAME + "/" + TrackFileFormat.KMZ_WITH_TRACKDETAIL_AND_SENSORDATA_AND_PICTURES.getPreferenceId() + "/*/*", URI_KMZ_WITH_TRACKDETAIL_SENSORDATA_AND_PICTURES);
uriMatcher.addURI(ContentProviderUtils.AUTHORITY_PACKAGE, TracksColumns.TABLE_NAME + "/" + TrackFileFormat.CSV.getPreferenceId() + "/*/*", URI_CSV);
}
@@ -133,8 +131,6 @@ public class ShareContentProvider extends CustomContentProvider {
case URI_GPX -> TrackFileFormat.GPX;
case URI_KML_WITH_TRACKDETAIL_SENSORDATA ->
TrackFileFormat.KML_WITH_TRACKDETAIL_AND_SENSORDATA;
case URI_KMZ_WITH_TRACKDETAIL_AND_SENSORDATA ->
TrackFileFormat.KMZ_WITH_TRACKDETAIL_AND_SENSORDATA;
case URI_KMZ_WITH_TRACKDETAIL_SENSORDATA_AND_PICTURES ->
TrackFileFormat.KMZ_WITH_TRACKDETAIL_AND_SENSORDATA_AND_PICTURES;
case URI_CSV -> TrackFileFormat.CSV;
@@ -41,45 +41,18 @@ public enum TrackFileFormat {
}
},
@Deprecated //TODO Check if we really need this
KMZ_WITH_TRACKDETAIL_AND_SENSORDATA("KMZ_WITH_TRACKDETAIL_AND_SENSORDATA") {
private static final boolean exportPhotos = false;
@Override
public TrackExporter createTrackExporter(@NonNull Context context, @NonNull ContentProviderUtils contentProviderUtils) {
KMLTrackExporter exporter = new KMLTrackExporter(context, contentProviderUtils, exportPhotos);
return new KMZTrackExporter(context, contentProviderUtils, exporter, exportPhotos);
}
@Override
public String getMimeType() {
return "application/vnd.google-earth.kmz";
}
public String getExtension() {
return "kmz";
}
@Override
public boolean includesPhotos() {
return exportPhotos;
}
},
KMZ_WITH_TRACKDETAIL_AND_SENSORDATA_AND_PICTURES("KMZ_WITH_TRACKDETAIL_AND_SENSORDATA_AND_PICTURES") {
private static final boolean exportPhotos = true;
@Override
public TrackExporter createTrackExporter(@NonNull Context context, @NonNull ContentProviderUtils contentProviderUtils) {
KMLTrackExporter exporter = new KMLTrackExporter(context, contentProviderUtils, exportPhotos);
return new KMZTrackExporter(context, contentProviderUtils, exporter, exportPhotos);
return new KMZTrackExporter(context, contentProviderUtils, exportPhotos);
}
@Override
public String getMimeType() {
return KMZ_WITH_TRACKDETAIL_AND_SENSORDATA.getMimeType();
return "application/vnd.google-earth.kmz";
}
public String getExtension() {
@@ -220,6 +220,10 @@ public class KMLTrackExporter implements TrackExporter {
printWriter = null;
}
boolean isExportPhotos() {
return exportPhotos;
}
private void writeHeader(List<Track> tracks) {
printWriter.println(
"""
@@ -54,14 +54,12 @@ public class KMZTrackExporter implements TrackExporter {
private final ContentProviderUtils contentProviderUtils;
private final KMLTrackExporter fileTrackExporter;
private final boolean exportPhotos;
private final Context context;
public KMZTrackExporter(Context context, ContentProviderUtils contentProviderUtils, KMLTrackExporter trackExporter, boolean exportPhotos) {
public KMZTrackExporter(Context context, ContentProviderUtils contentProviderUtils, boolean exportPhotos) {
this.context = context;
this.contentProviderUtils = contentProviderUtils;
this.fileTrackExporter = trackExporter;
this.exportPhotos = exportPhotos;
this.fileTrackExporter = new KMLTrackExporter(context, contentProviderUtils, exportPhotos);
}
@Override
@@ -79,7 +77,7 @@ public class KMZTrackExporter implements TrackExporter {
}
// Add photos
if (exportPhotos) addImages(context, tracks ,zipOutputStream);
if (fileTrackExporter.isExportPhotos()) addImages(context, tracks ,zipOutputStream);
return true;
} catch (InterruptedException | IOException e) {
Log.e(TAG, "Unable to write track", e);
@@ -48,7 +48,6 @@ public class ImportExportSettingsFragment extends PreferenceFragmentCompat {
private void setExportTrackFileFormatOptions() {
Map<String, String> options = TrackFileFormat.toPreferenceIdLabelMap(getResources(),
TrackFileFormat.KMZ_WITH_TRACKDETAIL_AND_SENSORDATA_AND_PICTURES,
TrackFileFormat.KMZ_WITH_TRACKDETAIL_AND_SENSORDATA,
TrackFileFormat.KML_WITH_TRACKDETAIL_AND_SENSORDATA,
TrackFileFormat.GPX,
TrackFileFormat.CSV);