Ошибка не требует пояснений ... doInBackground()
работает в фоновом потоке, который, поскольку он не предназначен для зацикливания, не подключен к Looper
.
Скорее всего, вы не 'вообще не нужно напрямую создавать экземпляр обработчика ... все данные, которые возвращает ваша реализация doInBackground()
, будут переданы onPostExecute()
, который выполняется в потоке пользовательского интерфейса.Появляется в вопросе:
Похоже, вы пытаетесь запустить AsyncTask
из потока рендеринга GL ... не делайте этого, потому что они тоже никогда не будут Looper.loop()
.AsyncTasks действительно предназначены для запуска только из потока пользовательского интерфейса.
Наименее разрушительным решением, вероятно, будет вызов Activity.runOnUiThread()
с Runnable
, который запускает ваш AsyncTask
.