diff --git a/MyTracks/src/com/google/android/apps/mytracks/io/sendtogoogle/AccountChooserActivity.java b/MyTracks/src/com/google/android/apps/mytracks/io/sendtogoogle/AccountChooserActivity.java index b2b9c8550..517cded18 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/io/sendtogoogle/AccountChooserActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/io/sendtogoogle/AccountChooserActivity.java @@ -96,6 +96,7 @@ public class AccountChooserActivity extends Activity { protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case SyncUtils.DRIVE_PERMISSION_REQUEST_CODE: + SyncUtils.cancelNotification(this); if (resultCode == Activity.RESULT_OK) { driveCallback.onSuccess(); } else { diff --git a/MyTracks/src/com/google/android/apps/mytracks/io/sync/SyncUtils.java b/MyTracks/src/com/google/android/apps/mytracks/io/sync/SyncUtils.java index 1706791d2..ad063a389 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/io/sync/SyncUtils.java +++ b/MyTracks/src/com/google/android/apps/mytracks/io/sync/SyncUtils.java @@ -162,6 +162,17 @@ public class SyncUtils { } return null; } + + /** + * Cancels any notification to request drive permission. + * + * @param context the context + */ + public static void cancelNotification(Context context) { + NotificationManager notificationManager = (NotificationManager) context.getSystemService( + Context.NOTIFICATION_SERVICE); + notificationManager.cancel(NOTIFICATION_ID); + } /** * Syncs now for the current account. diff --git a/MyTracks/src/com/google/android/apps/mytracks/settings/GoogleSettingsActivity.java b/MyTracks/src/com/google/android/apps/mytracks/settings/GoogleSettingsActivity.java index 66f6e0e0f..cfda6677b 100644 --- a/MyTracks/src/com/google/android/apps/mytracks/settings/GoogleSettingsActivity.java +++ b/MyTracks/src/com/google/android/apps/mytracks/settings/GoogleSettingsActivity.java @@ -138,11 +138,12 @@ public class GoogleSettingsActivity extends AbstractSettingsActivity { protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case SyncUtils.DRIVE_PERMISSION_REQUEST_CODE: + SyncUtils.cancelNotification(this); if (resultCode == Activity.RESULT_OK) { permissionCallback.onSuccess(); } else { permissionCallback.onFailure(); - } + } break; default: super.onActivityResult(requestCode, resultCode, data);