Intent trong lập trình Android - Phần 1

-Là một cấu trúc dữ liệu mô tả cách thức, đối tượng thực hiện của một Activity

-Là cầu nối giữa các Activity : ứng dụng Android thường bao gồm nhiều Activity,

mỗi Activity hoạt động độc lập với nhau và thực hiện những công việc khác nhau.

Intent chính là người đưa thư, giúp chúng ta triệu gọi cũng như truyền các

dữ liệu cần thiết để thực hiện một Activity từ một Activity khác. Điều này cũng

giống như việc di chuyển qua lại giữa các Forms trong lập trình Windows Form

pdf5 trang | Chuyên mục: Android | Chia sẻ: dkS00TYs | Lượt xem: 3080 | Lượt tải: 2download
Tóm tắt nội dung Intent trong lập trình Android - Phần 1, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 Trong bài này mình sẽ trình bày tóm tắt những kiến thức cơ bản nhất về 
Intent trong lập trình Android, cách truyền nhận thông tin qua Intent và minh họa 
bằng một ví dụ đơn giản. Hy vọng sẽ giúp các bạn mới làm quen với Android nắm 
bắt được một cách nhanh chóng. 
I- Intent là gì? 
-Là một cấu trúc dữ liệu mô tả cách thức, đối tượng thực hiện của một Activity 
-Là cầu nối giữa các Activity : ứng dụng Android thường bao gồm nhiều Activity, 
mỗi Activity hoạt động độc lập với nhau và thực hiện những công việc khác nhau. 
Intent chính là người đưa thư, giúp chúng ta triệu gọi cũng như truyền các 
dữ liệu cần thiết để thực hiện một Activity từ một Activity khác. Điều này cũng 
giống như việc di chuyển qua lại giữa các Forms trong lập trình Windows Form 
(Chú ý : trong hình vẽ trên Activity B chỉ trả về kết quả khi cần thiết. VD : 
giả sử Activity A nhắc người dùng chọn ảnh profile ; Activity B liệt kê các ảnh 
trong sdcard và cho phép người dùng chọn ảnh. Khi đó cặp “code+result” là cần 
thiết và có thể là “0:null” tức cancel hoặc “1:ảnh 20” tức chọn ảnh 20) 
Để biết thêm về Activity xem tại đây. 
 -Intent là một khái niệm then chốt và đặc trưng của Android Platform. Có thể nói 
lập trình Android chính là lập trình intent-base. 
II-Intent chứa những dữ liệu gì ? 
-Intent về cơ bản là một cấu trúc dữ liệu, được mô tả trong lớp 
android.content.Intent 
-Các thuộc tính của một đối tượng Intent : 
-Các action định nghĩa sẵn : 
Đây là những hằng String đã được định nghĩa sẵn trong lớp Intent. Đi kèm 
với nó là các Activity hay Application được xây dựng sẵn sẽ được triệu gọi mỗi khi 
Intent tương ứng được gửi (tất nhiên khi được cung cấp đúng data). VD: 
+Dial một số phone: 
PHP Code: 
Intent dialIntent = new Intent(Intent.ACTION_DIAL, Uri.
parse("tel:123456")); 
startActivity(dialIntent); 
+Hiện danh bạ điện thoại: 
PHP Code: 
 Intent listContacts = new Intent(Intent.ACTION_VIEW, 
 Uri.pa
rse(“content://contacts/people/”); 
startActivity(listContacts); 
Đến đây chắc bạn sẽ tự hỏi những chuỗi data trong hàm Uri.parse(data) có 
nghĩa là gì? Đó là định dạng dữ liệu tương ứng với mỗi action (chuẩn RFC 3986). 
Một khi bạn đã sử dụng built-in action thì bạn phải cung cấp data cho nó theo định 
dạng này. Bảng dưới đây liệt kê một số định dạng và action tương ứng đã được 
định nghĩa sẵn: 
-Tự định nghĩa action 
Về nguyên tắc bạn có thể đặt tên action của một intent là bất cứ thứ gì theo 
chuẩn đặt tên thông thường, hay thậm chí dùng luôn hằng action đã định nghĩa sẵn 
như ACTION_VIEW (hay “android.intent.action.VIEW”). Cái tên VIEW thực 
chất chỉ là một tên gợi tả, bạn có thể dùng nó với mục đích thực hiện một activity 
để … gửi mail! Tuy nhiên điều đó rõ ràng là rất “ngớ ngẩn”. Thay vào đó ta hãy 
dùng ACTION_SEND hay ACTION_SENDTO. 
Việc đặt tên action cho intent đúng tên gợi tả còn có một ý nghĩa khác đó là 
app của bạn có thể được triệu gọi từ một app khác. Ví dụ bạn viết một app có 
activity đáp ứng intent ACTION_SEND và để chia sẻ một bức ảnh lên trang web 
của bạn (giống như ta làm với Facebook, Flickr etc.) Khi đó có thể app của bạn sẽ 
là một lựa chọn chia sẻ ảnh của người dùng điện thoại. 

File đính kèm:

  • pdfIntent trong lập trình Android - Phần 1.pdf