Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

AsyncTasks

Τα 3 σημαντικά τμήματα που περιέχει είναι τα: onPreExecute, doInBackground και onPostExecute. Μιλάνε από μόνα τους για το τι κάνουν...

 

Έχω ένα Task που κάνει Login Ασύγχρονα σε μια σελίδα και όσο διαρκεί η επικοινωνία εμφανίζει ένα ProgressDialog (απλά ένας spinner που λέει Please Wait)

 

Έλα όμως που δεν εμφανίζεται άμεσα με το κλικ στο κουμπί!. Και όχι δεν κολλάει το UI γιατί το δοκίμασα και μια χαρά responsive είναι.

 

Εμφανίζεται μετά από 3-4 (τυχαία) seconds.

//Pseudo Code
AsyncTask<,,>()
{
  @Override
  protected void onPreExecute(...)
  {
    //Show Progress Dialog
  }

  protected void doInBackground(...)
  {
    // Login
  }

  protected void onPostExecute(...)
  {
    // Whatever post action
  }
}.execute();

Καμιά ιδέα;

 

Πιθανολογώ ότι μπλοκάρει το 'onProgressUpdate' τα πρώτα δευτερόλεπτα για κάποιον λόγο που δεν μπορώ να καταλάβω. Δεν βρήκα λύση στο StackOverflow.

Δημοσ.

μπορεί να έχεις κάτι άλλο που κολλάει την διαδικασία, δοκίμασε debug ή βάλε logs για να δεις τι γίνεται.
Θα σου πρότεινα όμως να μην χρησιμοποιείς AsyncTask για Internet Actions αλλά Volley.
Δύσκολο πάντως να ρώτησες στο SoF και να μην πήρες απάντηση και να περιμένεις εδώ.

Δημοσ.

νταξ τελικά μλκια. το βρήκα. 

 

είχα ().execute().get() που όντως μπλόκαρε το UI. μπερδεύτηκα γιατί παρόλο που η get Μπλοκάρει τo UI όταν πάταγα και 2η φορά το κουμπί ακουγόταν ο ήχος και γενικά δεν μου έδινε την εντύπωση ότι είχε κολλήσει.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...