Rumah >Java >javaTutorial >Bagaimana untuk Menggantikan API AsyncTask yang Dihentikan dalam Android 11?
Alternatif kepada AsyncTask API Dihentikan Penggunaannya dalam Android 11
Dalam Android 11, AsyncTask API telah ditamatkan penggunaannya dan memihak kepada penggunaan java.util .pakej serentak sebaliknya. Pembangun yang mengekalkan pangkalan kod Android lama dengan tugas tak segerak perlu menyesuaikan kod mereka untuk keserasian masa hadapan.
Java.util.concurrent Alternative for Static Inner Class AsyncTask
Untuk menggantikan a kelas dalaman statik AsyncTask menggunakan java.util.concurrent untuk aplikasi dengan versi SDK minimum 16, coretan kod berikut boleh digunakan:
ExecutorService executor = Executors.newSingleThreadExecutor(); Handler handler = new Handler(Looper.getMainLooper()); executor.execute(new Runnable() { @Override public void run() { //Background work here handler.post(new Runnable() { @Override public void run() { //UI Thread work here } }); } });
Sebagai alternatif, pembangun yang menggunakan Java 8 atau yang lebih baru boleh memudahkan lagi kod:
ExecutorService executor = Executors.newSingleThreadExecutor(); Handler handler = new Handler(Looper.getMainLooper()); executor.execute(() -> { //Background work here handler.post(() -> { //UI Thread work here }); });
Pendekatan ini menggunakan java.util. pakej serentak untuk melaksanakan tugas latar belakang dan Pengendali untuk mengemas kini urutan UI. Ia adalah pengganti yang sesuai untuk API AsyncTask yang telah ditamatkan sambil mengekalkan keserasian dengan peranti Android yang menjalankan tahap API yang lebih lama.
Atas ialah kandungan terperinci Bagaimana untuk Menggantikan API AsyncTask yang Dihentikan dalam Android 11?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!