我有一个远程调用,我想知道把这个处理代码放在哪里更好:
if ( result == null )
{
Toast.makeText(getApplicationContext(), "Some error message", Toast.LENGTH_LONG).show();
}
else
if ( result.equals( "all_problems_db_error" ))
{
Log.d( "AllBusinessesActivity" , "result: " + result )
}
else
{
// Unwrap the stuff from the JSON string
String problem_title = null;
String problem_id = null;
try
{
JSONArray obj = new JSONArray(result);
if ( obj != null )
{
problems.clear();
for ( int i = 0; i < obj.length(); i++ )
{
JSONObject o = obj.getJSONObject(i);
problem_title = o.getString("problem_title");
problem_id = o.getString("problem_id");
Problem p = new Problem ( );
p.setProblemId(problem_id);
p.setProblemName(problem_title);
problems.add( p );
}
adapter.notifyDataSetChanged();
}
}
catch ( Exception e )
{
// Do something :)
}
}
将它放在 onPostExecute() 或末尾或 doInBackground() 中更好吗?
我现在在 onPostExecute() 中执行此操作,但有时我会遇到一些缓慢,并且我一直在阅读,在 doInBackground 中执行此操作可能会更好。
有人可以向我解释一下区别吗?如果我在 doInBackground() 中执行此操作,那么使用 onPostExecute 方法的目的是什么?