Dùng AlarmManager để thực hiện đăng ký nhất định trong tương lai (thường là thời gian dài). • Nếu xử lý trong thời gian ngắn thì khuyến cáo nên dùng Handler. • Ưu điểm của AlarmManager, khi đến thời điểm được đựt trước, dù ứng dụng đang không chạy vẫn được gọi. • Nếu tắt máy thì bật lại cũng không còn (lưu ý điểm này) | Xử lý bất đông bộ MultiUni Trần Vũ Tất Bình Thread Thông thường dùng Thread để xử lý các code xử lý nặng, hoặc mất thời gian có thể gây chậm chương trình hoặc giao diện bị block. Thread khá thông dụng và trong Android dùng lớp Thread của Java. Mặc định, mỗi ứng dụng chạy trong một process và code được thực thi trong thread chính của process đó. Thread Nếu code xử lý quá lâu, không kịp phản hồi lại các sự kiện người dùng trong 5 giây thì sẽ xuất hiện dialog “Application is not responding” và người dùng có thể force close ứng dụng ngay lập tức. Dù không bị force close thì việc ứng dụng bị lag là khó chấp nhận. Tham khảo 3 link sau: Thread Thread thread = new Thread() { @Override public synchronized void start() { // Khởi tạo các đối tượng cần thiết tại đây (); } @Override public void run() { // code xử lý chính của thread trong này (); } }; (); //bắt đầu thread Thread Lưu ý: Thread lần đầu thực thi gọi phương thức start(), những lần sau chỉ gọi phương thức run(), không gọi start() nữa. Các code xử lý liên quan đến giao diện chỉ được xử lý trong thread chính của ứng dụng (ví dụ load ảnh từ mạng về thì dung thread, nhưng hiển thị ảnh lên ImageView thì xử lý trong thread chính) Sau khi thực thi xong phương thức run(), thread không còn active nữa. Handler Trong Android, để tiện việc giao tiếp giữa 2 thread (như đề cập ở slide trước) ta dùng đối tượng Handler. Ngoài ra, có thể dùng Handler để đặt xử lý một yêu cầu nào đó sau một khoảng thời gian xác định. Chi tiết tại đây: Handler Giao tiếp giữa 2 Thread: Giả sử trong phương thức run() của Thread trong slide trước, đã lấy xong đối tượng Bitmap về. Muốn truyền . | Xử lý bất đông bộ MultiUni Trần Vũ Tất Bình Thread Thông thường dùng Thread để xử lý các code xử lý nặng, hoặc mất thời gian có thể gây chậm chương trình hoặc giao diện bị block. Thread khá thông dụng và trong Android dùng lớp Thread của Java. Mặc định, mỗi ứng dụng chạy trong một process và code được thực thi trong thread chính của process đó. Thread Nếu code xử lý quá lâu, không kịp phản hồi lại các sự kiện người dùng trong 5 giây thì sẽ xuất hiện dialog “Application is not responding” và người dùng có thể force close ứng dụng ngay lập tức. Dù không bị force close thì việc ứng dụng bị lag là khó chấp nhận. Tham khảo 3 link sau: Thread Thread thread = new Thread() { @Override public synchronized void start() { // .