I tried to put finish() method to stop back stack.but it gave syntax error to me.how can I stop back stack.Thanks in advance.
private class getNewMessages extends AsyncTask<ApiConnector, Long, JSONArray> {
@Override
protected JSONArray doInBackground(ApiConnector... params) {
try {
JSONArray array = params[0].getMessage(name, password);
// String [] array=new String[10];
if (array.length() > 0) {
Intent nextScreen = new Intent(getApplicationContext(), bussiness.class);
nextScreen.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP |Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(nextScreen);
}
}catch (Exception e)
{
Toast.makeText(getApplicationContext(),"Wrong Credintials", Toast.LENGTH_SHORT).show();
}
return null;
}
@Override
protected void onPostExecute(JSONArray result) {
}
}
最佳答案
将代码转移到 onPostExecute 回调
@Override
protected void onPostExecute(JSONArray result) {
if (result.length() > 0) {
Intent nextScreen = new Intent(getApplicationContext(), bussiness.class);
nextScreen.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK |Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(nextScreen);
}
}
关于android - 如何停止 AsyncTask 类中的 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33076670/