1. Trang chủ
  2. » Công Nghệ Thông Tin

Giáo trình Lập trình thiết bị di động 2 (Nghề Quản trị mạng Trình độ Cao đẳng)

83 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Lập trình thiết bị di động 2
Tác giả Nguyễn Phát Minh
Trường học Trường Cao đẳng Nghề Cần Thơ
Chuyên ngành Quản trị mạng
Thể loại giáo trình
Năm xuất bản 2021
Thành phố Cần Thơ
Định dạng
Số trang 83
Dung lượng 2,67 MB

Cấu trúc

  • BÀI 1: TỔNG QUAN VỀ LẬP TRÌNH ANDROID – CÀI ĐẶT ANDROID STUDIO (6)
    • 1. Hệ điều hành Android (6)
    • 3. Môi trường phát triển ứng dụng Android (17)
    • 4. Cài đặt Android Studio (18)
  • BÀI 2: CÁC THÀNH PHẦN GIAO DIỆN TRÊN ANDROID STUDIO (26)
    • 1. Khởi tạo dự án (26)
    • 2. Cấu trúc dự án (30)
    • 3. Cập nhật Android API (35)
    • 4. Cài đặt và sử dụng A ndroid Virtual Device (AVD) (37)
  • BÀI 3: ACTIVITY – VÒNG ĐỜI CỦA MỘT ACTIVITY (41)
    • 1. Các thành phần trong ứng dụng Android (41)
    • 2. Activity và độ ưu tiên ứng dụng (44)
  • BÀI 4: CÁC ĐIỀU KHIỂN CƠ BẢN (50)
    • 1. Giao diện người dùng (50)
    • 2. View và Viewgroup (55)
    • 3. Các điều khiển cơ bản (59)
    • 4. Kiểm tra lỗi và tối ưu lại giao diện (64)
  • BÀI 5: LƯU TRỮ DỮ LIỆU – SQLITE (67)
    • 1. Khái niệm cơ sở dữ liệu (database concepts) (0)
    • 2. Giới thiệu SQLITE (68)
    • 3. Xây dựng cơ sở dữ liệu với SQLITE (68)
    • 4. Truy vấn dữ liệu (70)
    • 5. Sắp xếp dữ liệu (75)
  • BÀI 6: PROJECT KẾT THÚC KHÓA HỌC (79)
    • 1. Read book (79)
    • 2. Reminder (79)
  • TÀI LIỆU THAM KHẢO (83)

Nội dung

TỔNG QUAN VỀ LẬP TRÌNH ANDROID – CÀI ĐẶT ANDROID STUDIO

Hệ điều hành Android

- Năm 2003, Android Inc được thành lập bởi Andy Rubin, Rich Miner, Nick Sears và Chris White tại California

- Năm 2005, Google mua lại Android Inc và bắt đầu nuôi ý tưởng tự sản xuất điện thoại di động

Năm 2007, tổ chức OHA (Open Handset Alliance) được thành lập với sự tham gia của hơn 80 công ty hàng đầu trong lĩnh vực kỹ thuật điện tử, bao gồm các nhà sản xuất phần cứng, phân phối thiết bị di động, cũng như các công ty phần mềm và sản xuất chất bán dẫn.

Có thể kể đến một số công ty nổi tiếng như Samsung, Motorola, LG, HTC, T- Mobile, Vodafone, ARM và Qualcomm…

- Năm 2008, Google ra mắt chiếc di động đầu tiên đồng thời open source bản SDK (Software Development Kit) phiên bản 1.0

- Năm 2010, Google khởi đầu dòng thiết bị Nexus với thiết bị đầu tiên của HTC là Nexus One

- Năm 2013, ra mắt loạt thiết bị phiên bản GPE

- Năm 2014, Google công báo Android Wear, hệđiều hành dành cho các thiết bị đeo được

- Các phiên bản của hệ điều hành Android:

Hình 1.1 Các phiên bản hệđiều hành Android

Phiên bản API Thời gian phát hành Đặc điểm nổi bật

Thanh thông báo kéo từ trên xuống, màn hình chính phong phú, tích hợp chặt chẽ với Gmail, giao diện đơn giản nhưng khá đẹp mắt thời bấy giờ

Tải và cài đặt bản cập nhật ngay trên thiết bị, không cần kết nối với máy tính (phương thức Over The Air)

Android phiên bản đầu tiên được Google đặt tên theo các món ăn theo thứ tự bảng chữ cái, mang đến nhiều tính năng nổi bật như bàn phím ảo, khả năng tùy biến giao diện qua widget, cải tiến clipboard, hỗ trợ quay phim, cho phép tải ảnh và video lên YouTube, cũng như truy cập danh bạ trong Google Talk.

Một vài điểm trong giao diện được cải thiện, hỗ trợ mạng CDMA, hỗ trợ các thành phần đồ họa độc lập với độ phân giải, tính năng Quick

Hộp tìm kiếm cho phép người dùng tìm kiếm mọi thứ chỉ trong một nơi duy nhất, trong khi Android Market hiển thị các ứng dụng miễn phí và trả phí hàng đầu Ngoài ra, camera đã được cải thiện với việc tích hợp trình xem ảnh tốt hơn.

Hỗ trợ nhiều tài khoản người dùng, tính năng

Quick Contact đã cải tiến bàn phím ảo với trình duyệt mới hỗ trợ HTML5, cho phép phát video ở chế độ toàn màn hình Hộp địa chỉ kết hợp với thanh tìm kiếm, giúp người dùng dễ dàng phóng to, thu nhỏ bằng cách chạm tay vào màn hình Giao diện mới đẹp, sang trọng và gọn gàng hơn trước.

Eclair 7 01/2010 Hỗ trợ Live Wallpaper, chuyển giọng nói thành văn bản và một màn hình khóa mới

Số lượng màn hình chính đã tăng từ 3 lên 5, cùng với sự xuất hiện của dãy nút kích hoạt nhanh cho chế độ gọi điện, web và App Drawer Hệ thống giờ hỗ trợ hiển thị hình ảnh 3D, đồng thời tính năng trạm phát Wifi cũng đã được bổ sung Ngoài ra, khả năng duyệt web với Flash cũng được hỗ trợ.

Tính năng di chuyển một phần ứng dụng từ bộ nhớ máy sang thẻ nhớ

Bài viết giới thiệu hai thanh chặn khi chọn văn bản, bàn phím được cải thiện với thiết kế đẹp và dễ sử dụng hơn Ngoài ra, xuất hiện công cụ quản lý pin và ứng dụng hỗ trợ máy ảnh trước Các tính năng mới được cung cấp tập trung vào phát triển game, đa phương tiện và các phương thức truyền thông mới.

Phiên bản này dành riêng cho máy tính bảng

Sử dụng màu đen và màu xanh dương làm tông màu chủ đạo Homescreen và widget được thiết kế lại Không còn nút nhấn vật lý

Cải thiện đa nhiệm – xuất hiện nút Recent Apps giúp chuyển đổi ứng dụng dễ dàng và nhanh chóng Thanh Action Bar xuất hiện

Phiên bản Android 3.1 và 3.2 sửa lỗi và thêm vài tính năng mới như thay đổi kích thước widget ngay trên homescreen, hỗ trợ thẻ SD,

Hỗ trợ bộ font Roboto Hệ thống thông báo

Noitification đã được làm mới hoàn toàn, mang đến vẻ đẹp và sự tiện lợi hơn Bàn phím cũng được cải thiện đáng kể Hệ điều hành cho smartphone và máy tính bảng đã được hợp nhất, giúp duyệt web nhanh hơn và tối ưu hóa hiệu suất hoạt động của thiết bị, đồng thời kéo dài thời gian sử dụng pin.

Màn hình Lockscreen - vòng trượt mở khóa dùng kích hoạt 3 tính năng khác nhau : mở khóa máy, sử dụng camera, kích hoạch Google Now (Android

4.0 có 2 tính năng: mở khóa máy, sử dụng camera) Khả năng tìm kiếm bằng giọng nói, kết quả trả về được thiết kế theo dạng thẻ đồ họa, thông minh hơn, trực quan hơn Project butter giúp mang lại độ mượt mà chưa từng có cho Android

Miracast là một chuẩn chia sẻ nội dung số qua kết nối Wi-Fi, cho phép người dùng truyền tải hình ảnh và âm thanh một cách dễ dàng Bàn phím hỗ trợ nhập liệu bằng cách vẽ các đường nét từ ký tự này sang ký tự khác, giúp việc nhập liệu trở nên thuận tiện hơn Ngoài ra, chế độ chụp ảnh toàn cảnh Photo Sphere cung cấp trải nghiệm chụp hình độc đáo Thiết bị còn hỗ trợ nhiều tài khoản người dùng trên máy tính bảng, đáp ứng nhu cầu sử dụng đa dạng.

Android 4.3 18 07/2013 Hỗ trợ kết nối Bluetooth Smart, bộ API

Jelly Bean ES 3.0 introduces Wi-Fi functionality for location tracking, even when users disable their connection It also includes features such as Restricted Profile and Notification Access, enhancing user control and privacy.

Hiệu suất của RAM 512 MB được cải thiện, cho phép chạy KitKat với hiệu năng cao gấp 1,6 lần phiên bản trước Giao diện đã được làm phẳng hơn, kết hợp dịch vụ tìm kiếm Google Search để tự động liên kết danh bạ từ internet vào số điện thoại mới Ngoài ra, Text Messages và Hangouts đã được gộp chung và bổ sung thêm các biểu tượng mới.

Emoji vào bàn phím mặc định Tính năng Screen Recording cho phép ghi các hoạt động diễn ra trên màn hình thành các đoạn video MP4

Hình ảnh trên thiết bị hiện nay đã trở nên phẳng hơn và đa dạng màu sắc hơn trước đây Chức năng “T action” cho phép người dùng thực hiện các thao tác cụ thể thông qua việc lắc máy Ngoài ra, tính năng tự động trả lời điện thoại khi đưa máy lên tai và tự động giảm âm lượng chuông khi nhấc máy khỏi mặt bàn mang lại sự tiện lợi Người dùng còn có thể nhận và trả lời thông báo như email, tin nhắn, và cuộc gọi nhỡ ngay trên màn hình khóa Những cải tiến này không chỉ tiết kiệm pin mà còn nâng cao tính bảo mật cho thiết bị.

(Chưa có tên chính thức)

Thiết kế lại quyền hạn của các ứng dụng

Trang bị cho trình duyệt Chrome tính năng Chrome Custom Tabs, cho phép các nhà phát triển chèn trực tiếp nội dung trang web vào ứng dụng Tính năng này giúp mở nội dung ngay trong các ứng dụng liên quan, đồng thời giới thiệu hệ thống thanh toán mới trên di động mang tên Android.

Pay Cải thiện độ ổn định, hiệu suất cũng như khả năng tiết kiệm pin Hỗ trợ cổng kết nối USB TypeC thế hệ mới

B ả ng 1-1 Các phiên b ả n h ệ điề u hành Android

1.1.1 Xu th ế phát tri ể n công ngh ệ di độ ng

Theo các chuyên gia công nghệ từ những hãng hàng đầu như Microsoft, Google và IBM, hiện nay có ba xu hướng toàn cầu nổi bật: Mạng xã hội và bảo mật, công nghệ di động, và phân tích dữ liệu lớn (Big Data).

(phân tích dữ liệu lớn), Cloud (Điện toán đám mây)

Vào tháng 01/2014, trang WeAreSocial đã công bố báo cáo "Bối cảnh dữ liệu toàn cầu," tiết lộ những chỉ số phát triển ấn tượng của Thế Giới Số Các số liệu thống kê từ WeAreSocial đã chỉ ra sự tăng trưởng mạnh mẽ trong lĩnh vực số hóa trên toàn cầu.

 Sốlượng đăng kí sử dụng di động đang hoạt động vào khoảng 93% của dân số thế giới

 Tỉ lệ người kết nối Internet toàn cầu đạt 35%, tương đương 2,5 tỉ người

 Các kênh Mạng xã hội tiếp tục phát triển mạnh mẽ trong 12 tháng qua, khi đạt tỉ lệ thâm nhập người dùng là 26%

 Hơn 4 tỉngười trên khắp thế giới hiện đang sở hữu ít nhất một chiếc điện thoại di động

Hình 1.2 Bối cảnh dữ liệu toàn cầu - Nguồn: WeAreSocial - Tại Việt Nam:

Môi trường phát triển ứng dụng Android

Android SDK (Bộ công cụ phát triển phần mềm Android) và JDK (Bộ công cụ phát triển Java) là hai công cụ thiết yếu cho việc lập trình ứng dụng Android Để lập trình hiệu quả hơn, việc sử dụng một công cụ lập trình IDE (Môi trường phát triển tích hợp) như Eclipse sẽ mang lại sự tiện lợi và hỗ trợ tốt cho quá trình phát triển ứng dụng.

- Android SDK, JDK và Eclipse đều có mặt trên một số phiên bản hệ điều hành

Windows, Mac OS và Linux cho phép lập trình trên hệ điều hành quen thuộc Hơn nữa, Android được thực thi trên máy ảo Dalvik, tạo điều kiện cho việc phát triển ứng dụng đồng nhất trên cả ba môi trường này.

Android Studio, công cụ lập trình chính thức của Google, được phát hành phiên bản đầu tiên 0.1 vào tháng 5/2013 Hiện tại, phiên bản mới nhất là 1.2.1, được phát hành vào tháng 5/2015, trong khi phiên bản 1.3 đã được công bố tại sự kiện Google I/O 2015.

IntelliJ mang đến nhiều tính năng vượt trội so với ADT, bao gồm hỗ trợ xây dựng dự án dạng Gradle, sửa lỗi nhanh và tái sử dụng cấu trúc phương thức Nó cũng cung cấp công cụ kiểm tra tính khả dụng, khả năng hoạt động của ứng dụng và tương thích nền tảng, đồng thời đảm bảo bảo mật mã nguồn và đóng gói ứng dụng Trình biên tập giao diện cho phép người dùng có cái nhìn tổng quan về giao diện ứng dụng và các thành phần, cùng khả năng tùy chỉnh trên nhiều cấu hình khác nhau Ngoài ra, IntelliJ còn hỗ trợ tương tác với nền tảng Google Cloud.

Android Studio liên tục phát triển các phiên bản cải tiến nhằm tạo ra một môi trường phát triển toàn diện, mang đến trải nghiệm nhanh chóng và mượt mà hơn so với các IDE khác.

Cài đặt Android Studio

Ứng dụng Android được thực thi trên máy ảo Dalvik, cho phép lập trình trên nhiều phiên bản hệ điều hành như Microsoft® Windows® 8/7/Vista/2003 (32 hoặc 64-bit) Để phát triển ứng dụng, cần tối thiểu 2 GB RAM, 400 MB dung lượng ổ đĩa trống, và ít nhất 1 GB cho Android SDK, hình ảnh hệ thống giả lập và cache Độ phân giải màn hình tối thiểu là 1280 x 800, và yêu cầu Java Development Kit (JDK) phiên bản 7 trở lên Đối với giả lập tăng tốc, cần hỗ trợ bộ xử lý Intel® với các tính năng như Intel® VT-x, Intel® EM64T (Intel® 64), và Execute Disable (XD) Bit.

To start developing applications with Android Studio, you need to download and install two software packages: Java JDK, which should be installed first and it's recommended to choose the latest version, and Android Studio, which includes essential components such as the Android Studio IDE, Android SDK tools, the Android 5.0 (Lollipop) platform, and the Android 5.0 emulator system image with Google APIs.

- Sau khi tải bộ cài Android Studio thành công, chúng ta chạy tập tin android – studio – bundle để tiến hành cài đặt Android Studio → màn hình Welcome to

Android Studio Setup xuất hiện → Next:

- Nếu hệ thống không phát hiện ra JDK trong máy tính của bạn, một hộp thoại yêu cầu chỉ rõ đường dẫn hoặc cài đặt JDK xuất hiện:

Nếu bạn đã cài đặt JDK, hãy tìm đường dẫn đến thư mục cài đặt Tiếp theo, nhấn Next để mở hộp thoại cấu hình cài đặt Trong đó, hãy chắc chắn chọn (check) tất cả các thành phần cần thiết như trong hình minh họa.

- Xuất hiện hộp loại thông báo các điều khoản và một sốlưu ý khi sử dụng Android Studio → chọn I Agree:

- Xuất hiện hộp thoại yêu cầu chọn nơi cài đặt Android Studio và Android SDK như sau:

Afterward, click Next to proceed with the installation process The Start Menu selection dialog will appear; select Android Studio and click Install to continue with the installation.

- Khi quá trình cài đặt hoàn tất, nhấn Next để tiếp tục:

- Hộp thoại cuối cùng của quá trình cài dặt xuất hiện, chọn Finish để kết thúc quá trình cài đặt:

Hình 1.15 Ở lần khởi động đầu tiên, một hộp thoại “import” bản Android Studio cũ xuất hiện, nếu bạn cài đặt mới thì chọn như hình dưới → chọn OK:

- Vì là lần đầu tiên khởi động nên Android Studio phải cập nhật một vài thứ cho quá trình làm việc sau này:

- Khi hoàn tất quá trình cập nhật, nhấn Finish để kết thúc và hoàn thành quá trình cài đặt

Tạo danh sách các phiên bản hệ điều hành Android từ phiên bản 5 đến nay

Cài đặt Android Studio với bộ SDK để từ phiên bản 5 trở lên Loại bỏ các phiên bản cũ hơn

Những trọng tâm cần chú ý trong bài:

- Hiểu được các khái niệm về hệ điều hành Android

- Hiểu được kiến trúc của hệ điều hành Android

- Biết được các môi trường phát triển ứng dụng của hệ điều hành Android

- Thực hiện cài đặt thành công Android Studio trên hệ thống máy vi tính

Yêu cầu vềđánh giá kết quả học tập:

+ Về kiến thức: Trình bày được các khái niệm về hệ điều hành Android, kiến trúc của hệ điều hành Android

+ Về kỹ năng:cài đặt thành công Android Studio trên hệ thống máy vi tính

+ Năng lực tự chủ và trách nhiệm: Tỉ mỉ, cẩn thận, chính xác, ngăn nắp trong công việc

Kiến thức được đánh giá qua các hình thức kiểm tra như viết, trắc nghiệm và vấn đáp Kỹ năng bao gồm việc cài đặt thành công Android Studio trên hệ thống máy tính.

+ Năng lực tự chủ và trách nhiệm: Tỉ mỉ, cẩn thận, chính xác, ngăn nắp trong công việc.

CÁC THÀNH PHẦN GIAO DIỆN TRÊN ANDROID STUDIO

Khởi tạo dự án

Khởi chạy Android Studio, xuất hiện màn hình “Welcome to Android Studio”

→ chọn Start a new Android Studio project để tạo dự án Android Studio (Android Studio project) mới như sau:

Hộp thoại tiếp theo xuất hiện yêu cầu đặt tên cho ứng dụng và tên domain như hình sau:

Application name: là tên của ứng dụng

Tên miền công ty kết hợp với tên ứng dụng tạo thành package, được sử dụng để đưa ứng dụng lên Google Play Store.

Pakage name: Tên của gói ứng dụng của bạn Dùng để phân biệt với các gói khác trên Google Play Store

Project location: Nơi lưu trữứng dụng của bạn

Sau khi hoàn tất việc nhập thông tin như tên ứng dụng, tên miền và vị trí lưu dự án, bạn hãy nhấn nút Next để tiếp tục Tiếp theo, một hộp thoại sẽ xuất hiện, cho phép bạn chọn thiết bị mà bạn muốn phát triển ứng dụng.

Chọn như hình trên nếu muốn phát triển ứng dụng trên điện thoại (phone) và tablet Sau đó nhấn, Next để tiếp tục

Chú ý rằng Minimum SDK là phiên bản tối thiểu cần thiết để ứng dụng hoạt động, và một số phương thức API sẽ được bổ sung thông qua thư viện hỗ trợ.

Chọn Blank Activity và nhấn Next Hộp thoại nhập thông tin của Activity xuất hiện như sau:

Tên lớp lưu giữ mã nguồn là tên của activity, trong khi tên tập tin XML được sử dụng để tạo giao diện cho activity đó Tiêu đề sẽ được hiển thị khi activity được kích hoạt trên thiết bị.

Menu Resource Name: Tên tập tin xml để tạo menu cho phần mềm

Sau khi nhập đầy đủ thông tin, nhấn Finish để kết thúc Chờ “building” dự án xong là hoàn tất việc tạo dự án.

Cấu trúc dự án

Sau khi hoàn thành việc tạo dự án, bước tiếp theo là mở dự án đó để kiểm tra cấu trúc của nó Màn hình hiển thị sẽ tương tự như hình ảnh dưới đây.

Màn hình làm việc được chia thành 7 phần, mỗi phần phục vụ các chức năng cụ thể Phần 1 là thanh công cụ tiện lợi, giúp người dùng dễ dàng truy cập vào các tính năng cần thiết.

Nó giúp chúng ta thao tác nhanh các chức năng thường dùng khi lập trình, chi tiết như sau:

Biểu tượng dùng để mở một tập tin (file) hay một dự án (Project)

Biểu tượng dùng dể lưu lại tất cả các tập tin trong dự án (Save All)

Chúng ta cũng có thểdùng phím Ctrl + S để thực hiện chức năng này thay vì chọn biểu tượng

Biểu tượng đồng bộ hóa cho phép tìm kiếm và tải lại tất cả các tập tin đã thay đổi từ bên ngoài, đảm bảo rằng các dữ liệu trên ổ đĩa cứng luôn được cập nhật và chính xác.

Chúng ta có thể dùng phím Ctrl + All +Y để thực hiện chức năng này thay vì chọn biểu tượng này

Biểu tượng Undo-Redo cho phép người dùng quay lại các hành động đã thực hiện trước đó hoặc làm lại các hành động đó Ngoài ra, bạn cũng có thể sử dụng tổ hợp phím Ctrl + Z để hoàn tác và Ctrl + Shift + Z để làm lại hành động.

Biểu tượng để “cut” tập tin hoặc hình ảnh đến Clipboad Có thể sử dụng phím Ctrl + X để thực hiện chức năng này thay vì chọn biểu tượng này

Biểu tượng sao chép tập tin hoặc hình ảnh vào Clipboard có thể được thay thế bằng phím tắt Ctrl + C để thực hiện chức năng này một cách nhanh chóng.

Biểu tượng dán cho phép bạn chèn tập tin hoặc hình ảnh từ Clipboard Bạn cũng có thể sử dụng phím tắt Ctrl + V để thực hiện chức năng này thay vì nhấn vào biểu tượng.

Biểu tượng để chạy (run) ứng dụng Chúng ta cũng có thể dùng phím Shift + F10 thay vì chọn biểu tượng này

Biểu tượng để “debug” ứng dụng Chúng ta cũng có thể dùng phím Shift + F9 thay vì chọn biểu tượng này

Biểu tượng là Android Virtual Device Manager (AVD Manager) cho phép tạo và quản lý các thiết bị ảo

Biểu tượng SDK Manager là công cụ quản lý phiên bản Android, bao gồm các biểu tượng chức năng thường dùng trong lập trình Ngoài ra, còn nhiều biểu tượng khác mà bạn có thể tìm hiểu thêm Phần 2 của bài viết đề cập đến cấu trúc hệ thống của ứng dụng.

Chúng ta cũng có thểthay đổi cách hiển thị(thường đặt mặc định là Android)

Cấu trúc dự án có thể chia thành phần sau:

Thư mục src chứa các file mã nguồn java cho dự án, trong khi thư mục gen chứa file R.java - file do trình biên dịch sinh ra để tham chiếu tới tất cả các tài nguyên trong dự án, và bạn không nên chỉnh sửa file này Thư mục bin lưu trữ các file *.apk (Android Package file) được build bởi ADT Thư mục res/drawable-hdpi chứa các đối tượng drawable thiết kế cho màn hình có độ phân giải cao, còn thư mục res/layout chứa các file layout dùng để thiết kế giao diện Cuối cùng, thư mục res/values là nơi lưu trữ các file XML khác với tập hợp tài nguyên như định nghĩa về strings và colors.

AndroidManifest.xml: chứa thông tin cài đặt ứng dụng

Thư mục assets chứa tất cả các tập tin không biên dịch như âm thanh, hình ảnh và tập tin CSDL của ứng dụng Phần 3 rất quan trọng cho những người mới bắt đầu lập trình, vì đây là nơi hiển thị các điều khiển mà Android hỗ trợ, cho phép bạn kéo thả trực tiếp vào phần Giao diện thiết bị để thiết kế.

Chú ý ở góc trái có 2 phần là Design và Text, với:

Phần “Design”: cho phép thiết kế giao diện bằng cách kéo thả o Phần “Text”: phép chúng ta thiết kế giao diện bằng cách viết thẻ XML

34 o Phần 4: là vùng giao diện thiết bị

Cho phép kéo thả các điều khiển vào đây, với tùy chọn hiển thị theo chiều ngang hoặc dọc, phóng to hoặc thu nhỏ, và căn chỉnh các điều khiển Phần 5 rất quan trọng khi màn hình của bạn có nhiều điều khiển, giúp quản lý và tổ chức chúng hiệu quả.

Nó hiển thị giao diện theo dạng cấu trúc cây nên bạn dễ dàng quan sát và lựa chọn điều khiển khi chúng bị chồng lập trên giao diện

Hình 1.28 o Phần 6: cho phép thiết lập trạng thái hay thuộc tính cho các điều khiển trên giao diện

Vai trò của tập tin AndroidManifest.xml:

Lưu trữ thông tin tên gói ứng dụng, tồn tại duy nhất một tên gói cho mỗi ứng dụng

Ví dụ: com.htsi.myfirstapp

Cho biết ứng dụng sử dụng các thành phần nào, mỗi thành phần được khai trong một cặp thẻ

Ví dụ: …. Định nghĩa tiến trình quản lý các thành phần ứng dụng Định nghĩa các quyền sử dụng API và truy xuất ứng dụng khác

Qui định các yêu cầu khi được ứng dụng khác truy xuất

Khai báo cấp độ API tối thiểu xây dựng ứng dụng

Khai báo các thư viện có liên quan.

Cập nhật Android API

Như đã đề cập ở phần cấu trúc dự án (3.3.2 – Phần 1) để cập nhật Android API, chúng ta sử dụng công cụ SDK Manager

SDK Manager giúp quản lý các phiên bản Android, cung cấp tài liệu hướng dẫn, ví dụ minh họa và phương thức API tương ứng Để khởi động SDK Manager, bạn chỉ cần nhấn vào biểu tượng, ADT sẽ tự động cập nhật các gói mới Bạn có thể chọn phiên bản Android hoặc công cụ cần thiết và nhấn "Install Packages" để cài đặt.

Hình 1.31 Tải và cài đặt bộ SDK với SDK Manager

Chú ý: o Các gói cần được cài đặt:

SDK Platform (phiên bản mới nhất):

Google USB Driver (chỉ yêu cầu trên hệ điều hành Windows)

Intel x86 Emulator Accelerator (HAXM installer).

Cài đặt và sử dụng A ndroid Virtual Device (AVD)

Android Virtual Device Manager (AVD Manager) là công cụ giúp lập trình viên tạo và quản lý các thiết bị ảo Để bắt đầu tạo thiết bị ảo, người dùng chỉ cần nhấn vào biểu tượng AVD Manager trên thanh công cụ của Android Studio, sau đó một hộp thoại mới sẽ hiện ra, cho phép chọn tùy chọn "Create a virtual device".

Xuất hiện hộp thoại “Virtual Device Configuration” cho phép bạn chọn thiết bị muốn tạo như sau:

Note: We can customize the name, device type, memory capacity, and more for the device we want to create by selecting the Clone Device button, which will bring up the Configure Hardware Profile dialog box as shown.

Device Name: tên thiết ảo cần tạo (thường đặt tên theo phiên bản)

Device Type: loại thiết bị muốn tạo, có các lựa chọn: Phone/ Tablet, Android Wear, Android TV

Screen: độ rộng và độ phân giải cho màn hình

Memory: bộ nhớ thiết bị

Tiếp theo, chúng ta chọn Next để tiếp tục quá trình tạo máy ảo → xuất hiện hộp thoại cho phép chọn phiên bản hệđiều hành muốn tạo:

Hình 1.36 Để cấu hình nâng cao, chúng ta chọn Show Advanced Settings

Chọn Finish để hoàn thành quá trình tạo máy ảo

Tạo project mới, với Activity khởi đầu có TextView hiển thị tên của mình

Tạo project mới có sẵn 2 Activity, chỉnh sửa nội dung của 2 activity để hiển thị tên của mình ở cả 2 activity

Những trọng tâm cần chú ý trong bài:

- Biết cách bắt đầu một dự án trên Android Studio

- Trình bày được cấu trúc của một dự án được phát triển trên Android Studio

- Biết được cách thức cập nhật Android API

- Cài đặt và sử dụng được Android Virtual Device

Yêu cầu vềđánh giá kết quả học tập:

+ Về kiến thức: Trình bày được cấu trúc của một dự án được phát triển trên Android Studio

+ Về kỹ năng:Cài đặt và sử dụng được Android Virtual Device

+ Năng lực tự chủ và trách nhiệm: Tỉ mỉ, cẩn thận, chính xác, ngăn nắp trong công việc

+ Về kiến thức: Được đánh giá bằng hình thức kiểm tra viết, trắc nghiệm, vấn đáp + Về kỹ năng: Cài đặt và sử dụng được Android Virtual Device

+ Năng lực tự chủ và trách nhiệm: Tỉ mỉ, cẩn thận, chính xác, ngăn nắp trong công việc

ACTIVITY – VÒNG ĐỜI CỦA MỘT ACTIVITY

Các thành phần trong ứng dụng Android

Trong một ứng dụng Android thường chúng ta sẽ gặp 8 thành phần cơ bản sau:

Trong ứng dụng Android, Activity là một thành phần quan trọng, hoạt động như một màn hình cho phép người dùng tương tác với các chức năng của ứng dụng, chẳng hạn như chụp hình, xem bản đồ và gửi email.

Một ứng dụng có thể có một hoặc nhiều Activity, Activity được khởi chạy đầu tiên khi ứng dụng hoạt động được gọi là “MainActivity”

Activity có thể hiển thịở chế toàn màn hình, hoặc ở dạng cửa sổ với một kích thước nhất định

Các Activity có thể gọi đến các Activity khác, Activity được gọi sẽ nhận được tương tác ở thời điểm đó

Intent là một đối tượng truyền tải thông điệp, cho phép tạo ra các yêu cầu hành động giữa các thành phần trong ứng dụng hoặc giữa các ứng dụng khác nhau Nó thường được sử dụng trong ba trường hợp chính.

Khởi động Activity o Khởi động Service

Chuyển phát thông tin cho Broadcast Receiver

View là thành phần quan trọng trong việc tạo ra các điều khiển trên màn hình, giúp nhận tương tác từ người dùng và hiển thị thông tin cần thiết một cách hiệu quả.

View bao gồm hai dạng:

View: các điều khiển đơn lẻ

ViewGroup: tập hợp nhiều điều khiển đơn lẻ

Thành phần ứng dụng cho phép gửi thông báo trên toàn hệ thống mà không cần giao diện, thông qua thanh trạng thái Broadcast Receiver truyền tải thông báo dưới hai dạng khác nhau.

Hệ thống cung cấp các thông báo trực tiếp như tắt màn hình, pin yếu và thay đổi kết nối Đồng thời, ứng dụng cũng xây dựng các thông báo cho các thành phần bên trong, bao gồm khởi động Service và tải nội dung đến ứng dụng.

Service được sử dụng để thực thi các tác vụ cần nhiều thời gian, thực hiện ở chếđộ ngầm và thường không cần giao diện hiển thị

Service được chạy ngầm, tức lại ứng dụng vẫn chạy nhưng không hiển thị giao diện tương tác

Một số tác vụ cần thực hiện bằng Service:

Trình diễn các tập tin đa truyền thông như nhạc, phim… o Kết nối và thực hiện tải các nội dung thông qua Internet

Truy xuất đọc ghi tập tin

Content Provider cung cấp phương pháp truy xuất tập hợp dữ liệu ứng dụng, cho phép lưu trữ dữ liệu dưới nhiều định dạng khác nhau như SQLite, tập tin, tài nguyên Web hoặc bất kỳ thư mục lưu trữ nào.

Có thể sử dụng Content Provider để xây dựng các ứng dụng sử dụng chung nguồn tài nguyên hoặc sử dung riêng

Trong Android, một số Content Provider được xây dựng sẵn:

Tài nguyên đa truyền thông o Lịch

Context thuộc gói android.content (android.content.Context)

Lớp cơ bản này chứa hầu hết thông tin về môi trường ứng dụng của Android, cho thấy mọi thao tác và tương tác với hệ điều hành đều phải diễn ra qua lớp này.

Nó cung cấp các phương thức để các lớp khác có thểtương tác với hệ thống Android

Context cho phép truy cập đến các nguồn tài nguyên đã được định nghĩa và các lớp khác, đóng vai trò như một lớp ở mức ứng dụng, liên quan đến hệ thống.

Hầu hết các lớp liên quan đến giao diện người dùng (UI) như layout, button, textview, imageview, listview đều cần phải kế thừa từ lớp Context, vì Context là cầu nối để truy cập các tài nguyên như R.id và R.layout Nếu không tham chiếu đến lớp Context, chúng ta sẽ không thể sử dụng các tài nguyên đã tạo.

Context giúp người dùng dễ dàng truy cập và tương tác với các tài nguyên trong hệ thống, bao gồm thông tin, dịch vụ, thông số cấu hình, dữ liệu, danh bạ, cuộc gọi, kết nối, và chế độ rung.

Thành phần này cho phép gửi thông báo đến người dùng mà không làm gián đoạn quá nhiều hoạt động trên thiết bị Chẳng hạn, khi nhận được tin nhắn hoặc email, thiết bị sẽ sử dụng thông báo để alert người dùng thông qua âm thanh, đèn nền và biểu tượng hiển thị trên thanh tác vụ.

Notification được xây dựng cho mục đích gửi các thông báo đến người dùng thông qua thanh trạng thái

Giao diện Notification không thuộc giao diện ứng dụng, nhưng có thể tuỳ chỉnh giao diện Notification thông qua các phương thức có sẵn

Activity và độ ưu tiên ứng dụng

Trong một ứng dụng Android, người dùng tương tác với nhiều Activity, vì một ứng dụng không thể chỉ có một Activity duy nhất Trong quá trình lập trình, việc chuyển đổi giữa các Activity và truyền dữ liệu giữa chúng là điều cần thiết.

Activity trước sang Activity mới để có thể xử lý

Mỗi Activity đại diện cho một màn hình ứng dụng Ta sẽ thực hiện tạo Activity cho ứng dụng theo các bước sau:

Tạo mới lớp kế thừa từ lớp Activity o Thực thi các phương thức quản lý trạng thái

Xây dựng giao diện trong tài nguyên res/layout

Khai báo Activity trong tập tin AndroidManifest.xml

Ví dụ: public class MyFirstActivity extends Activity{

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }

} Đăng kí Activity trong tập tin AndroidMannifest.xml:

2.1 Quản lý trạng thái Activity (Managing the Activity Lifecycle)

Activity là thành phần quan trọng trong việc phát triển ứng dụng Android, đóng vai trò chính trong quản lý giao diện người dùng Hệ điều hành Android xử lý Activity theo cơ chế stack, trong đó khi một Activity mới được khởi tạo, nó sẽ được xếp lên đầu stack và trở thành Activity đang chạy, trong khi các Activity trước đó sẽ bị tạm dừng và chỉ hoạt động trở lại khi Activity mới được giải phóng.

Tương tựnhư các ngôn ngữ lập trình khác, Activity Stack hoạt động theo cơ chế LIFO (LAST IN FIRST OUT)

Mỗi khi một Activity mới được mở, nó sẽ hiển thị trên Activity cũ Để quay lại Activity trước đó, bạn chỉ cần nhấn nút “Back” hoặc sử dụng lệnh tương ứng.

Home rồi thì sẽ không thể dùng nút “Back” để quay lại màn hình cũ được

Một Activity cơ bản có 4 trạng thái:

Active: Activity đang hiển thị trên màn hình (foreground)

Khi một activity ở trạng thái "paused", nó vẫn hiển thị nhưng không thể tương tác Ví dụ, khi một activity mới xuất hiện, nó sẽ hiển thị giao diện chồng lên activity cũ Tuy nhiên, giao diện mới này thường nhỏ hơn, cho phép người dùng vẫn nhìn thấy một phần của activity cũ, nhưng không thể thực hiện bất kỳ tương tác nào với nó.

Stopped: Activity bị thay thế hoàn toàn bởi Activity mới sẽ tiến đến trạng thái stopped

Khi hệ thống thiếu bộ nhớ, nó sẽ giải phóng các tiến trình theo nguyên tắc ưu tiên Các Activity ở trạng thái dừng hoặc tạm dừng cũng có thể bị giải phóng, và khi được hiển thị lại, chúng sẽ cần khởi động lại hoàn toàn và phục hồi trạng thái trước đó.

2.2 Vòng đời của Activity (Activity Lifecycle) - Entire lifetime:

Từ phương thức onCreate() cho tới onDestroy(): từ lúc Activity được gọi ra cho đến lúc bị huỷ - Visible liftetime:

Từ sau khi gọi onStart() cho tới lúc gọi onStop() : trong trường hợp này ta vẫn có thể thấy màn hình Activity

47 o Xảy ra từ khi gọi onResume() cho tới lúc gọi onPause(): trong suốt thời gian này Activity luôn nằm ở trên cùng và ta có thểtương tác được với nó

Hình 2.4 Vòng đời của Activity

2.3 Độưu tiên trong ứng dụng

Android quản lý các Ứng dụng dựa trên độưu tiên

Nếu hai ứng dụng có cùng trạng thái thì ứng dụng nào đã chạy lâu hơn sẽcó độưu tiên thấp hơn

Nếu ứng dụng đang chạy một Service hay Content Provider do một ứng dụng khác hỗ trợ thì sẽ có cùng độ ưu tiên với ứng dụng đó

Các ứng dụng sẽ bị đóng mà không có sựbáo trước

Hình 2.4 Cách phân định độ ưu tiên

The foreground process refers to the current application that the user is actively interacting with, while the visible process pertains to the application whose activity is displayed to the user, indicating that the onPaused() method of the activity has been invoked.

Service process: là Service đang chạy o Background process: là process của ứng dụng mà các activity của nó không hiển thị với người dùng (onStoped() của activity được gọi)

Empty process: process không có bất cứ 1 thành phần nào active

Theo chế độ ưu tiên thì khi cần tài nguyên, Android sẽ tự động kill process, trước tiên là các empty process

Tạo ứng dụng mới, mô tả vòng đời của 1 Activity, mỗi trạng thái sẽ ghi ra tập tin log

Tạo ứng dụng mới gồm 2 acitvity, trên acivity thứ nhất tạo button với sự kiện khi click sẽ mở activity 2

Những trọng tâm cần chú ý trong bài:

- Hiểu được các thành phần trong ứng dụng Android

- Hiểu được Activity là gì, mức độ ưu tiên trong ứng dụng

Yêu cầu vềđánh giá kết quả học tập:

+ Về kiến thức: Trình bày được các thành phần trong ứng dụng Android

+ Về kỹ năng: Chuyển đổi qua lại giữa các Activity

+ Năng lực tự chủ và trách nhiệm: Tỉ mỉ, cẩn thận, chính xác, ngăn nắp trong công việc

+ Về kiến thức: Được đánh giá bằng hình thức kiểm tra viết, trắc nghiệm, vấn đáp + Về kỹ năng: Chuyển đổi qua lại giữa các Activity

+ Năng lực tự chủ và trách nhiệm: Tỉ mỉ, cẩn thận, chính xác, ngăn nắp trong công việc

CÁC ĐIỀU KHIỂN CƠ BẢN

Giao diện người dùng

Giao diện người dùng là yếu tố quyết định thành công của ứng dụng Android Để ứng dụng Android phát triển, cần có giao diện trực quan, dễ hiểu và dễ sử dụng Bài viết này sẽ khám phá cấu trúc giao diện, các thành phần trên giao diện và thuộc tính của chúng.

Giao diện được xây dựng từ nhiều tài nguyên như layout, các điều khiển, hình ảnh và màu sắc Tất cả các tài nguyên thiết kế giao diện đều được lưu trữ trong thư mục res/.

Các tài nguyên layout được lưu trữ trong thư mục res/layout

Có thể có nhiều thư mục layout theo từ hạn định khác nhau: - Ví dụ: layout-land, layout-xhdpi… - Truy xuất: bao gồm 2 cách thức:

Java: R.layout.

XML: @[pakage:]layout/

Layout trong Android là các lớp mở rộng từ ViewGroup, cho phép sắp xếp và bố trí các điều khiển trên giao diện Mỗi người có thể thiết kế giao diện khác nhau, nhưng cần cân bằng giữa tính tiện dụng và thẩm mỹ Android cung cấp nhiều lớp Layout để người dùng có thể tùy chỉnh theo nhu cầu của từng ứng dụng.

Bao gồm các lớp kế thừa từ ViewGroup: AbsoluteLayout (Deprecated), AdapView (ListView, Gridview…), DrawerLayout, FragmentBreadCrumbs, FrameLayout,

GridLayout, LinearLayout, PagerTitleStrip, RelativeLayout, SlidingDrawer,

Trong việc xây dựng bố cục tổ chức cho một đối tượng duy nhất, đối tượng này mặc định sẽ được hiển thị ở vị trí góc trên bên trái của FrameLayout Bạn có thể sử dụng thuộc tính Gravity để điều chỉnh lại vị trí của đối tượng theo nhu cầu.

Frame Layout cho phép chứa nhiều View, cho phép các View này chồng lên nhau Điều này có nghĩa là các View ở dưới có thể bị che khuất bởi các View nằm trên Do đó, việc sử dụng Frame Layout cần được cân nhắc kỹ lưỡng để đảm bảo tính hiển thị của các thành phần giao diện.

Layout chỉ chứa một View - Ví dụ khai báo:

Các đối tượng kế thừa phổ biến của FrameLayout:

ViewFlipper: đối tượng cho phép thực hiện hiển thị các đối tượng ở chế độ phân trang, chỉ hiển thị một đối tượng ở một thời điểm

Các phương thức sử dụng: startFlipping setAutoStart showNext showPrevious

ScrollView: đối tượng cho phép thực hiện hiển thị các đối tượng ở chế độ cuộn màn hình, chỉ cho phép chứa một đối tượng ở một thời điểm

Table Layout là đối tượng layout kế thừa từ LinearLayout, cho phép hiển thị các đối tượng theo nhiều dòng (TableRow)

Mỗi dòng có thể chứa nhiều View, mỗi View được xem là một cột

Ngày đăng: 17/12/2023, 10:18

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN