我在这里读过类似的线程,甚至谷歌搜索,但没有解决方案.
onProgressUpdate()没有被调用.
这是代码:
public class DoHardWork extends AsyncTask { @Override protected Object doInBackground(Object... params) { publishProgress("Requesting XML data"); this.requestData(); publishProgress("Returning results"); this.returnResults(); return null; } protected void onProgressUpdate(String text) { super.onProgressUpdate(text); MainActivity.setLog(text); } }
我尝试在onProgressUpdate()中设置一个断点,但它从未被调用过.就像代码被忽略一样.
有人有类似的问题,结果只是日食只是弄乱了他,但我尝试重新启动它没有成功.
有任何想法吗?
解决方法
我认为你错过了代码上的一些事情.试试这个:
private class DoHardWork extends AsyncTask<Void,String,Long> { protected Long doInBackground(Void... urls) { publishProgress("Requesting XML data"); this.requestData(); publishProgress("Returning results"); this.returnResults(); return null; } protected void onProgressUpdate(String... progress) { super.onProgressUpdate(progress); MainActivity.setLog(progress[0]); } }