Tôi đang cố gắng tạo lại cùng một logic mà AsyncTask của Android tuân theo mã thuần Java.Cách tạo lại AsyncTask từ Android trong mã Java thuần túy
Để thực hiện điều đó, tôi đã tạo lớp trừu tượng AsyncTask triển khai IAsynTask của tôi về cơ bản gọi onPreExecute, doInBackground và onPostExecute, tôi cũng đã tạo phương thức thực thi nơi phép thuật xảy ra. Vì vậy, để sử dụng điều đó trong quá trình đăng nhập của tôi, ví dụ, tôi đã tạo lớp LoginTask mở rộng AsyncTask, nhưng không giống như tôi đã tưởng tượng việc triển khai onPreExecute, doInBackground và onPostExecute không phải là bắt buộc. Tôi đang làm gì sai?
inteface:
public interface IAsyncTask {
public void onPreExecute();
public void doInBackground();
public void onPostExecute();
}
Class:
public abstract class AsyncTask implements IAsyncTask{
public void onPreExecute() {
}
public void doInBackground(){
}
public void onPostExecute() {
}
public void execute() {
onPreExecute();
new Thread(new Runnable() {
@Override
public void run() {
doInBackground();
Platform.runLater(new Runnable() {
@Override
public void run() {
onPostExecute();
}
});
}
}).start();
}
}
[EDITED]
Với câu hỏi của tôi về JavaFX tôi đã nhận thấy rằng nhiều nhà phát triển mới đang phải đối mặt vấn đề quản lý Chủ đề. Tôi muốn chia sẻ những gì tôi đã làm để đơn giản hóa cuộc sống của tôi về quản lý các chủ đề trên javafx. Tôi đã tạo ra một lớp AsyncTask dựa trên AsyncTask từ Android mà về cơ bản làm giống như của Android một cách khiêm tốn nhưng hiệu quả. Bạn có thể tìm thêm thông tin về nó trên Github project
Tại sao không thấy nguồn Android? – azizbekian
Android là nguồn mở, bạn chỉ có thể truy cập và sao chép mã ... – Karakuri
Đây là: http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/ 4.2.2_r1/android/os/AsyncTask.java/ –