Merge pull request #1592 from misaochan/fix-failed-uploads

Attempt to fix failed uploads
This commit is contained in:
neslihanturan 2018-06-07 22:39:12 +03:00 committed by GitHub
commit b3b45679bc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 14 additions and 2 deletions

View file

@ -6,6 +6,7 @@ import android.accounts.AccountAuthenticatorResponse;
import android.accounts.AccountManager;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
@ -136,6 +137,11 @@ public class LoginActivity extends AccountAuthenticatorActivity {
}
}
public static void startYourself(Context context) {
Intent intent = new Intent(context, LoginActivity.class);
context.startActivity(intent);
}
private void forgotPassword() {
Utils.handleWebUrl(this, Uri.parse(BuildConfig.FORGOT_PASSWORD_URL));
}

View file

@ -81,6 +81,12 @@ public class SessionManager {
return sharedPreferences.getBoolean("isUserLoggedIn", false);
}
public void forceLogin(Context context) {
if (context != null) {
LoginActivity.startYourself(context);
}
}
public Completable clearAllAccounts() {
AccountManager accountManager = AccountManager.get(context);
Account[] allAccounts = accountManager.getAccountsByType(ACCOUNT_TYPE);

View file

@ -239,10 +239,10 @@ public class UploadService extends HandlerService<Contribution> {
Timber.d("Successfully revalidated token!");
} else {
Timber.d("Unable to revalidate :(");
// TODO: Put up a new notification, ask them to re-login
stopForeground(true);
Toast failureToast = Toast.makeText(this, R.string.authentication_failed, Toast.LENGTH_LONG);
failureToast.show();
sessionManager.forceLogin(this);
return;
}
}

View file

@ -18,7 +18,7 @@
<string name="login_success">Login success!</string>
<string name="login_failed">Login failed!</string>
<string name="upload_failed">File not found. Please try another file.</string>
<string name="authentication_failed">Authentication failed!</string>
<string name="authentication_failed">Authentication failed, please login again</string>
<string name="uploading_started">Upload started!</string>
<string name="upload_completed_notification_title">%1$s uploaded!</string>
<string name="upload_completed_notification_text">Tap to view your upload</string>