forked from upstream-mirrors/OpenTracks
Added Track as an extra to the Intent used with Intent.ACTION_SEND
Also removed the Locations ArrayList from the Track writeToParcel and createFromParcel as it's no longer populated
This commit is contained in:
@@ -187,6 +187,14 @@ public abstract class Constants {
|
|||||||
public static final String RESUME_TRACK_EXTRA_NAME =
|
public static final String RESUME_TRACK_EXTRA_NAME =
|
||||||
"com.google.android.apps.mytracks.RESUME_TRACK";
|
"com.google.android.apps.mytracks.RESUME_TRACK";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The name of the extra intent property that holds the track information
|
||||||
|
* when sharing with friends
|
||||||
|
*/
|
||||||
|
public static final String TRACK_EXTRA =
|
||||||
|
"com.google.android.apps.mytracks.TRACK";
|
||||||
|
|
||||||
|
|
||||||
public static int getActionFromMenuId(int menuId) {
|
public static int getActionFromMenuId(int menuId) {
|
||||||
switch (menuId) {
|
switch (menuId) {
|
||||||
case Constants.MENU_SEND_TO_GOOGLE:
|
case Constants.MENU_SEND_TO_GOOGLE:
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
package com.google.android.apps.mytracks;
|
package com.google.android.apps.mytracks;
|
||||||
|
|
||||||
import static com.google.android.apps.mytracks.Constants.TAG;
|
import static com.google.android.apps.mytracks.Constants.TAG;
|
||||||
|
import static com.google.android.apps.mytracks.Constants.TRACK_EXTRA;
|
||||||
import static com.google.android.apps.mytracks.DialogManager.DIALOG_IMPORT_PROGRESS;
|
import static com.google.android.apps.mytracks.DialogManager.DIALOG_IMPORT_PROGRESS;
|
||||||
import static com.google.android.apps.mytracks.DialogManager.DIALOG_PROGRESS;
|
import static com.google.android.apps.mytracks.DialogManager.DIALOG_PROGRESS;
|
||||||
import static com.google.android.apps.mytracks.DialogManager.DIALOG_SEND_TO_GOOGLE;
|
import static com.google.android.apps.mytracks.DialogManager.DIALOG_SEND_TO_GOOGLE;
|
||||||
@@ -1244,7 +1245,7 @@ public class MyTracks extends TabActivity implements OnTouchListener,
|
|||||||
*
|
*
|
||||||
* @param trackId The id of the track to be sent
|
* @param trackId The id of the track to be sent
|
||||||
*/
|
*/
|
||||||
public void sendTrack(long trackId, final TrackFileFormat format) {
|
public void sendTrack(final long trackId, final TrackFileFormat format) {
|
||||||
TrackWriter writer = TrackWriterFactory.newWriter(this, providerUtils, trackId, format);
|
TrackWriter writer = TrackWriterFactory.newWriter(this, providerUtils, trackId, format);
|
||||||
|
|
||||||
FileUtils fileUtils = new FileUtils();
|
FileUtils fileUtils = new FileUtils();
|
||||||
@@ -1272,6 +1273,9 @@ public class MyTracks extends TabActivity implements OnTouchListener,
|
|||||||
shareIntent.setType(format.getMimeType());
|
shareIntent.setType(format.getMimeType());
|
||||||
Uri u = Uri.fromFile(new File(writer.getAbsolutePath()));
|
Uri u = Uri.fromFile(new File(writer.getAbsolutePath()));
|
||||||
shareIntent.putExtra(Intent.EXTRA_STREAM, u);
|
shareIntent.putExtra(Intent.EXTRA_STREAM, u);
|
||||||
|
MyTracksProviderUtils myTracksProviderUtils = MyTracksProviderUtils.Factory.get(MyTracks.this);
|
||||||
|
Track track = myTracksProviderUtils.getTrack(trackId);
|
||||||
|
shareIntent.putExtra(TRACK_EXTRA, track);
|
||||||
startActivity(Intent.createChooser(shareIntent,
|
startActivity(Intent.createChooser(shareIntent,
|
||||||
getResources().getText(R.string.share_track).toString()));
|
getResources().getText(R.string.share_track).toString()));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,10 +51,6 @@ public class Track implements Parcelable {
|
|||||||
track.stats = source.readParcelable(classLoader);
|
track.stats = source.readParcelable(classLoader);
|
||||||
|
|
||||||
track.numberOfPoints = source.readInt();
|
track.numberOfPoints = source.readInt();
|
||||||
for (int i = 0; i < track.numberOfPoints; ++i) {
|
|
||||||
Location loc = source.readParcelable(classLoader);
|
|
||||||
track.locations.add(loc);
|
|
||||||
}
|
|
||||||
|
|
||||||
track.tableId = source.readString();
|
track.tableId = source.readString();
|
||||||
return track;
|
return track;
|
||||||
@@ -103,9 +99,6 @@ public class Track implements Parcelable {
|
|||||||
dest.writeParcelable(stats, 0);
|
dest.writeParcelable(stats, 0);
|
||||||
|
|
||||||
dest.writeInt(numberOfPoints);
|
dest.writeInt(numberOfPoints);
|
||||||
for (int i = 0; i < numberOfPoints; ++i) {
|
|
||||||
dest.writeParcelable(locations.get(i), 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
dest.writeString(tableId);
|
dest.writeString(tableId);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user