Это не о AsyncTask , а о Firebase .onDataChange
в Firebase будет вызываться в MainThread, и, следовательно, вы DatabaseClient.getInstance
работаете в MainThread.
Вам не нужно выполнять вызовы Firebase в отдельном потоке, поскольку клиент Firebase справляется с этим.Но когда вы получите ответ от Firebase, его onDataChange
будет выполнено в MainThread
.
. Я предлагаю вам вызвать Firebase в MainThread, а затем после получения данных в onDataChanged
позвонитеAsyncTask, у которого есть вызовы DatabaseClient.getInstance
.