我有一个扩展GLSurfaceView的类,并在我的Android应用程序中实现Renderer,它负责opengl渲染。当我尝试从onSurfaceCreated事件执行asynctask时,应用程序崩溃(没有抛出异常)。如果从主活动运行相同的异步任务,一切都很好。 asynctask实现在这一点上只是一个占位符:
public class DownloadImageTask extends AsyncTask<String, Void, Integer>
{
@Override
protected Integer doInBackground(String... myParams) {
return 1;
}
@Override
protected void onPostExecute(Integer result)
{
}
}
从onSurfaceCreated()
调用new DownloadImageTask().execute("myParam");
为什么我不能从onSurfaceCreated事件启动AsyncTask?
答案 0 :(得分:3)
我认为你需要在UI线程上调用它。尝试传入上下文并执行runOnUIThread。