Ich ziehe mir die Haare aus, was aussieht, als wäre es eine sehr einfache Sache. Sicherlich ist dies nur ein Tippfehler oder etwas dumm ist, aber ich bin nur sehen es nicht ...Android ASyncTask Rückgabetyp stimmt nicht überein
Ich habe eine AsyncTask Klasse als solche definiert (und es kompiliert fein)
public class SectionRetrieval extends AsyncTask<Void, Void, List<Section>>
{
@Override
protected List<Section> doInBackground(Void... voids)
{
List<Section> sections = new ArrayList<Section>();
...
return sections;
}
}
In meiner app I versuchen sie es als solche
List<Section> sections = new SectionRetrieval().execute();
zu nennen, aber diese nicht kompiliert
Error:(472, 63) Gradle: error: incompatible types:
AsyncTask<Void,Void,List<Section>> cannot be converted to List<Section>
ich habe versucht Trennung des cr der neuen SectionalRetrieval-Instanz und dem Aufruf der .execute(). Kein solches Glück. Es scheint wirklich zu denken, dass execute() wirklich versucht, eine Instanz von SectionalRetrieval zurückzugeben.
Also, wie habe ich es denken lassen, dass das was ich wollte?
siehe diese Antwort http://StackOverflow.com/A/10972142/3629732 aber diese eine nicht zu Leistungsproblemen empfohlen –