Chạy chương trình và Debug

Một phần của tài liệu Bài giảng phát triển ứng dụng cho các thiết bị di động (Trang 55 - 60)

2.3.4.1. Chạy chương trình

Sau bước biên dịch, ứng dụng sẽ được đóng gói thành tập tin .apk. Đồng thời dựa vào loại thiết bị/ emulator, file .apk sẽ được tải và cài đặt vào thiết bị android được chọn. Tại thời điểm chạy ứng dụng (runtime): đầu tiên phương thức OnCreate() của activity được thực thi cho phép giao diện ứng dụng được kết nối vào activity qua hàm setContentView().

Hình 1.45. Ứng dụng Hello chạy trên Android Virtual Device

launcher để xem danh sách các ứng dụng được cài đặt trên thiết bị, trong đó có ứng dụng SampleProject vừa tạo.

Hình 1.46. Ứng dụng Hello cài đặt trên AVD.

2.3.4.2.Gỡ lỗi (debug)

Công cụ Android Studio Debugger cho phép theo dõi ứng dụng theo thời gian thực. Ngoài ra nó còn cung cấp thêm thông tin về thiết bị đã kết nối hoặc máy ảo đang được sử dụng.

Breakpoint

Breakpoint là một thuật ngữ lập trình có nghĩa là vị trí ở dòng code nào mà ta muốn chương trình khi sẽ dừng tại đó.

Chúng ta có thể chèn thêm một breakpoint (hoặc nhiều breakpoint tùy ý muốn) ở vị trí nào mà chúng ta muốn chương trình khi chạy đến đấy thì dừng lại. Có nhiều cách để thêm breakpoint.

Cách thêm Breakpoint

Click vào vị trí muốn thêm breakpoint. Sau đó chọn Run > Toggle Line Breakpoint. Một vòng tròn màu đỏ sẽ xuất hiện trực tiếp ngay bên trái của dòng code này. Vùng vòng tròn màu đỏ này nằm trong người ta gọi là gutter.

Hình 1.47. Ví dụ về thêm Breakpoint

Để xóa điểm breakpoint, có thể chọn dòng tương tự, sau đó chọn Run > Toggle Line Breakpoint một lần nữa để tắt nó đi. Hoặc đơn giản là click đúp vào vòng tròn đỏ.

Cách sử dụng Breakpoints

Sau đó, có thể chạy debug bằng cách chọn icon “Debug” ở trên thanh công cụ. Việc này sẽ chạy ứng dụng ở chế độ debug lên thiết bị hay máy ảo.

Hình 1.48. Debug

Một khi ứng dụng chạy, bạn mở đến màn hình ứng dụng mà dòng code được đặt breakpoint trước đó có thể được gọi. Nếu dòng code đó được thực hiện, ứng dụng sẽ dừng lại và màn hình console debuger sẽ xuất hiện.

Hình 1.49. Giao diện Debug

Khi ứng dụng dừng lại tại breakpoint, để có thể kiểm tra giá trị của các biến thì chúng ta có một cách. Cách đơn giản là di chuột qua các biến để thấy các giá trị hiện tại của nó:

Hình 1.50. Chi tiết Debug

Nếu chúng ta click vào biểu tượng “+” ở bên trái của cửa sổ màu vàng xuất hiện khi chúng ta di chuột qua một biến, chúng ta có thể xem thêm chi tiết hơn

Điều hướng các dòng code khi debug

Không chỉ cần xem tại vị trí debug, ta cần xem code chạy có đúng không. Do đó cần phải xem chi tiết các bước trong Debug.

Hình 1.51. Các nút cần nhớ khi Debug 1. Nút hiển thị Breakpoint đang active

Nút này có tác dụng đặt con trỏ trở lại vào vị trí mà đang debug lỗi. 2. Step Over

Nút này sẽ giúp debug nhảy xuống dòng code tiếp theo 3. Step Into

Nút này sẽ nhảy vào bên trong hàm 4. Force Step Into

Nút này sẽ cho phép nhảy thẳng đến dòng đầu tiên bên trong của hàm được gọi 5. Thoát ra ngoài

Nhảy ra khỏi hàm đang debug.

6. Tiếp tục chương trình(Resume Program)

Nút này sẽ tiếp tục chạy ứng dụng một cách bình thường. Tạm thời bỏ qua debug 7. Tạm dừng chương trình(Pause Program)

Nút này sẽ được greyed-out trước tiên bởi vì chương trình đã sẳn sàng tạm dừng. Nếu bạn chọn tiếp tục chương trình, bạn sẽ tạm dừng nó lại với tùy chọn này.

8. Dừng ứng dụng (Stop App)

Hiểu nôm na là tắt ứng dụng và không debug nữa. 9. Xem các Breakpoints

Nút này sẽ mở một cửa sổ hiển thị các tất cả breakpoint đã được chèn. Ngoài ra, nó cho phép tinh chỉnh cài đặt cho từng breakpoint riêng biệt.

10. Mute Breakpoint

Tùy chọn này giúp cho có thể bật – tắt tạm thời tất cả các breakpoint.

CÂU HỎI CHƯƠNG 1

1. Viết chương trình Java tính tổng các số chẵn nằm trong khoảng 1 đến N rồi in ra kết quả, với N được nhập từ bàn phím.

2. Viết chương trình Java hiển thị tổng các bội số của 7 nằm giữa 1 và 200. 3. Viết chương trình Java đưa ra màn hình các số nguyên <60 theo định dạng

4. Viết một chương trình quản lí nhân viên của một công ty. Bao gồm các lớp chính:

• Lớp Human là một lớp trừu tượng, chỉ có một phương thức duy nhất là show().

• Lớp Person là lớp kế thừa từ lớp Human, có hai thuộc tính là tên (name) và tuổi (age). Để đóng gói dữ liệu các thuộc tính này có dạng private và các phương thức truy nhập chúng (get và set). Ngoài ra lớp này còn cài đặt phương thức show() kế thừa từ lớp trừu tượng Human.

• Lớp Employee là lớp kế thừa từ lớp Person, có thêm thuộc tính là lương (salary). Thuộc tính này cũng có dạng private để đóng gói dữ liệu và cần các phương thức truy nhập get/set. Lớp này cài đặt lại phương thức show(). Hơn nữa, lớp Employee có thêm hai phương thức addSalary() và addSalary(float) để tính tăng lương cho nhân viên: một phương thức tăng lương theo tỉ lệ mặc định là 10% (không cần tham số), và một phương thức tăng theo giá trị cụ thể đưa vào (cần tham số).

5. Nêu kiến trúc của hệ điều hành Android, các thành phần tạo nên ứng dụng Android.

6. Viết ứng dụng Android tính tổng, hiệu, tích, thương cho 2 số nguyên theo quy trình lập trình ứng dụng di động.

CHƯƠNG 2: LẬP TRÌNH ỨNG DỤNG ANDROID CƠ BẢN

Nội dung chương này tập trung trình bày về các kỹ thuật lập trình ứng dụng di động cơ sở trên nền tảng Android sử dụng ngôn ngữ Java. Nội dung trình bày bao gồm:

- Lập trình quản lý vòng đời ứng dụng di động. - Lập trình giao diện ứng dụng di động.

- Lập trình quản lý dữ liệu.

Một phần của tài liệu Bài giảng phát triển ứng dụng cho các thiết bị di động (Trang 55 - 60)

Tải bản đầy đủ (PDF)

(199 trang)