public void logoutUser() { AsyncHttpClient client = new AsyncHttpClient(); String token = ApiHelper.getSessionToken(context); client.addHeader("Authorization", token); client.delete( this.getApplicationContext(), ApiHelper.getLocalUrlForApi(getResources()) + "sessions", new AsyncHttpResponseHandler() { @Override public void onStart() {} @Override public void onSuccess(int statusCode, Header[] headers, byte[] response) { Intent intent = new Intent(MainActivity.this.context, LoginActivity.class); startActivity(intent); finish(); Toast toast = Toast.makeText(MainActivity.this.context, "Goodbye.", Toast.LENGTH_LONG); toast.show(); } @Override public void onFailure( int statusCode, Header[] headers, byte[] errorResponse, Throwable e) { String responseText = null; try { if (!ErrorHandle.isNetworkConnected(errorResponse)) { ErrorHandle.displayNetworkErrorModal(MainActivity.this); } else { responseText = new JSONObject(new String(errorResponse)).getString("reason"); if (ErrorHandle.isTokenExpired(responseText)) { ErrorHandle.displayTokenModal(MainActivity.this); } } } catch (JSONException j) { } } @Override public void onRetry(int retryNo) {} }); }