Opening from notification: pressing back goes to TrackListActivity.

Fixes #928.
This commit is contained in:
Dennis Guse
2021-10-13 22:58:07 +02:00
parent 58ca78b976
commit 2f5b7b63e4
2 changed files with 10 additions and 6 deletions
+5 -1
View File
@@ -308,7 +308,11 @@ limitations under the License.
<activity android:name=".TrackRecordedActivity" /> <activity android:name=".TrackRecordedActivity" />
<activity android:name=".TrackRecordingActivity" /> <activity android:name=".TrackRecordingActivity" android:parentActivityName=".TrackListActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".TrackListActivity" />
</activity>
<activity android:name=".TrackEditActivity" /> <activity android:name=".TrackEditActivity" />
@@ -377,16 +377,15 @@ public class TrackRecordingService extends Service implements TrackPointCreator.
private void showNotification(boolean isGpsStarted) { private void showNotification(boolean isGpsStarted) {
if (isRecording()) { if (isRecording()) {
Intent intent = IntentUtils.newIntent(this, TrackRecordingActivity.class) Intent intent = IntentUtils.newIntent(this, TrackRecordingActivity.class);
.putExtra(TrackRecordingActivity.EXTRA_TRACK_ID, recordingStatus.getTrackId());
int pendingIntentFlags = PendingIntent.FLAG_UPDATE_CURRENT; int pendingIntentFlags = PendingIntent.FLAG_UPDATE_CURRENT;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) { if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
pendingIntentFlags |= PendingIntent.FLAG_IMMUTABLE; pendingIntentFlags |= PendingIntent.FLAG_IMMUTABLE;
} }
PendingIntent pendingIntent = TaskStackBuilder.create(this) PendingIntent pendingIntent = TaskStackBuilder.create(this)
.addParentStack(TrackRecordingActivity.class) .addNextIntentWithParentStack(intent)
.addNextIntent(intent)
.getPendingIntent(0, pendingIntentFlags); .getPendingIntent(0, pendingIntentFlags);
notificationManager.updatePendingIntent(pendingIntent); notificationManager.updatePendingIntent(pendingIntent);
@@ -398,9 +397,10 @@ public class TrackRecordingService extends Service implements TrackPointCreator.
int pendingIntentFlags = 0; int pendingIntentFlags = 0;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) { if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
pendingIntentFlags = PendingIntent.FLAG_IMMUTABLE; pendingIntentFlags = PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT;
} }
PendingIntent pendingIntent = TaskStackBuilder.create(this) PendingIntent pendingIntent = TaskStackBuilder.create(this)
.addParentStack(TrackListActivity.class)
.addNextIntent(intent) .addNextIntent(intent)
.getPendingIntent(0, pendingIntentFlags); .getPendingIntent(0, pendingIntentFlags);