Ý định
Android Intent là một đối tượng mang một ý định, tức là một thông điệp từ một thành phần này đến một thành phần khác bên trong hoặc bên ngoài ứng dụng. Ý định có thể truyền đạt thông điệp giữa bất kỳ thành phần nào trong ba thành phần cốt lõi của ứng dụng - Hoạt động, Dịch vụ và Máy thu phát sóng.
Bản thân ý định, một đối tượng Intent, là một cấu trúc dữ liệu thụ động. Nó chứa một mô tả trừu tượng về một hoạt động sẽ được thực hiện.
Ví dụ: giả sử bạn có Hoạt động cần khởi chạy ứng dụng email khách và gửi email. Để làm điều này, Hoạt động của bạn sẽ gửi Ý định với hành động ACTION_SEND
, cùng với trình chọn thích hợp, tới Trình phân giải ý định của Android:
Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("mailto:")); // only email apps should handle this
Trình chọn được chỉ định cung cấp giao diện thích hợp để người dùng chọn cách gửi dữ liệu email của bạn.
KHÁM PHÁ NỘI DUNG
// Explicit Intent by specifying its class name
Intent i = new Intent(this, TargetActivity.class);
i.putExtra("Key1", "ABC");
i.putExtra("Key2", "123");
// Starts TargetActivity
startActivity(i);
Ý TƯỞNG GÓP Ý
// Implicit Intent by specifying a URI
Intent i = new Intent(Intent.ACTION_VIEW,
Uri.parse("http://www.example.com"));
// Starts Implicit Activity
startActivity(i);
Ý định đang chờ xử lý
PendingIntent là một mã thông báo mà bạn cung cấp cho một ứng dụng nước ngoài (ví dụ: NotificationManager, AlarmManager, Home Screen AppWidgetManager hoặc các ứng dụng bên thứ 3 khác), cho phép ứng dụng nước ngoài sử dụng quyền của ứng dụng của bạn để thực thi một đoạn mã được xác định trước.
Bằng cách cấp PendingIntent cho ứng dụng khác, bạn đang cấp cho ứng dụng đó quyền thực hiện thao tác mà bạn đã chỉ định như thể ứng dụng kia là của chính bạn (với cùng quyền và danh tính). Do đó, bạn nên cẩn thận về cách bạn xây dựng PendingIntent: hầu như luôn luôn, chẳng hạn, Intent cơ sở mà bạn cung cấp phải có tên thành phần được đặt rõ ràng thành một trong các thành phần của riêng bạn, để đảm bảo cuối cùng nó được gửi đến đó và không ở đâu khác.
Ví dụ cho Ý định đang chờ xử lý: http://android-pend-intent.blogspot.in/
Nguồn: Android Intents và Android Pending Intents
Hi vọng điêu nay co ich.