MỞ ĐẦU 1. LÝ DO CHỌN ĐỀ TÀI Ngày nay các thiết bị số cầm tay như điện thoại di động, điện thoại thông minh, máy tính bảng có rất nhiều trên thị trường. Với giá thành ngày càng rẻ và các lợi ích đem lại, các thiết bị đó ngày càng được sử dụng nhiều và phổ biến. Một nền tảng được sử dụng trong các thiết bị đó là hệ điều hành thông minh Android của Google.
Do vậy đi cùng việc phát triển và sử dụng các thiết bị phần cứng một cách hiệu quả thì việc phát triển các ứng dụng phần mềm chạy trên nền Android càng lúc càng tăng cao. Các thiết bị di động ngày càng mạnh mẽ với khả năng xử lí các tác vụ mà chúng ta khó có thể tưởng tượng trước đây vài năm. Những chiếc điện thoại thời trang và tiện dụng với những tính năng ưu việt về phần cứng. Trong khi việc phát triển nền tảng di động hiện nay chủ yếu xây dựng trên các hệ điều hành độc quyền, hạn chế các ứng dụng của bên thứ ba, sự ra đời của Android đã mang lại một giải pháp mở.
Không bị hạn chế, các lập trình viên Android tự do viết các ứng dụng tận dụng tối đa sự phát triển mạnh mẽ của phần cứng cho điện thoại di động. Android nhanh chóng trở thành hệ điều hành thu hút nhiều lập trình viên và chiếm một thị phần lớn trong thị trường di động. Việc sử dụng các thiết bị số ngoài khả năng hỗ trợ con người trong công việc, giải trí mà còn giúp con người tiết kiệm thời gian hơn vào nhiều công việc thực tiễn trong đời sống hằng ngày. Hiện nay việc cứu chữa và tự mình chấn đoán những bệnh thông thường của con người ngày càng hạn hẹp, sự thiếu đi kiến thức cũng như thực tiễn nhiều lúc đưa ra những phán đoán sai dẫn đến nguy hiểm cho con người.
Trong cuộc sống hiện nay việc trang bị những kiến thức đó không còn phổ biến và thường xuyên nữa. Vì vậy tìm một cách chữa hợp lý và phán đoán đúng những triệu chứng bệnh kịp thời giúp cho việc chữa bệnh nhanh chóng và hiệu quả. Từ những lý do trên nên em quyết định chọn đề tài “Ứng Dụng Bác Sĩ Tại Gia trên hệ điều hành Android” để làm đồ án tốt nghiệp. MỤC TIÊU VÀ NHIỆM VỤ Mục tiêu: Tìm hiểu được các công nghệ lập trình cần thiết trên nền Android để hoàn thành được ứng dụng có thể tìm kiếm nhanh và chính xác các bệnh.
Đưa ra các xử lý nhanh chóng. Võ Tấn – CCLT04B Trang 1 Ứng dụng bác sĩ tại gia trên hê điều hành Android Hiểu về nguyên lý hoạt động của Android, các thành phần của hệ thống cũng như của một ứng dụng thực thi trên nền Android. Tìm hiểu và áp dụng được các công nghệ lập trình trên nền Android như ngôn ngữ JAVA, tương tác với các tài nguyên của hệ thống. Tìm hiểu xây dựng một dịch vụ web trên nền php sử dụng hệ cơ sở dữ liệu MySQL.
Nhiệm vụ: Đọc các tài liệu liên quan về bộ thư viện lập trình trên nền Android. Tìm hiểu các dịch vụ liên quan đến ứng dụng. ĐỐI TƢỢNG NGHIÊN CỨU VÀ PHẠM VI HỆ THỐNG Đối tƣợng: Ngôn ngữ JAVA, PHP, JSON, XML. Hệ cơ sở dữ liệu MySQL.
Công cụ Android SDK Eclipse. Hệ điều hành và tài nguyên hệ thống Android. Phạm vi: Đề tài chỉ dừng lại ở khuôn khổ tìm kiếm các loại bệnh và bệnh, hướng dẫn cách nhận biết các bệnh, cách xử lý các bệnh đó sao cho nhanh chóng và hợp lý. Ứng dụng được viết trên nền Android 2.
PHƢƠNG PHÁP NGHIÊN CỨU Đọc sách và các tài liệu tham khảo tìm được. Ý NGHĨA THỰC TIỄN CỦA ỨNG DỤNG Chương trình có thể áp dụng vào cuộc sống hàng ngày để xử lý cách bệnh thường gặp, cách chữa trị nhanh chóng và hiệu quả hơn. Ứng dụng giúp con người như một bác sĩ tại nhà. Võ Tấn – CCLT04B Trang 2 Ứng dụng bác sĩ tại gia trên hê điều hành Android CHƢƠNG 2 : CƠ SỞ LÝ THUYẾT 2.
GIỚI THIỆU HỆ ĐIỀU HÀNH ANDROID Android là hệ điều hành trên các thiết bị số di động như smartphone và tablet (và hiện nay là cả trên một số đầu phát HD, HD Player) phát triển bởi Google và dựa trên nền tảng Linux. Trước đây, Android được phát triển bởi công ty liên hợp Android. Vào năm 2005, Google đã mua lại Android nằm trong chiến lược tiến vào thị trường di động. Google muốn Android trở thành nền tảng “mở” và miễn phí.
Do vậy hầu hết mã nguồn của Android được phát hành theo giấy phép mã nguồn mở Apache nên bất cứ ai muốn sử dụng Android có thể download toàn bộ mã nguồn. Hơn nữa các nhà sản xuất phần cứng có thể thêm các thành phần mở rộng độc quyền của hãng để tạo ra các sản phẩm khác nhau. Chính mô hình phát triển đơn giản này khiến Android trở nên rất hấp dẫn. Android có một cộng đồng những nhà phát triển rất lớn viết các ứng dụng cho hệ điều hành của mình.
Hiện tại có khoảng hơn 250,000 ứng dụng cho Android OS và vào khoảng hơn 375,000 ứng dụng đã được đệ trình, điều này khiến Android trở thành hệ điều hành di động có môi trường phát triển lớn thứ 2. Các nhà phát triển viết ứng dụng cho Android dựa trên ngôn ngữ Java. Sự ra mắt của Android vào ngày 5 tháng 11 năm 2007 gắn với sự thành lập của liên minh thiết bị cầm tay mã nguồn mở, bao gồm 78 công ty phần cứng, phần mềm và viễn thông nhằm mục đính tạo nên một chuẩn mở cho điện thoại di động trong tương lai. Google công bố hầu hết các mã nguồn của Android theo bản cấp phép Apache.
Hệ điều hành Android bao gồm 12 triệu dòng mã; 3 triệu dòng XML, 2.1 triệu mã Java và 1. Tổng quan cấu trúc của Android Nói một cách đơn giản thì Android bao gồm ba thành phần: 1. Một hệ điều hành mở, miễn phí cho các thiết bị di động. Một nền tảng mã nguồn mở cho phát triển các ứng dụng.
Thiết bị chạy hệ điều hành Android và các ứng dụng Android. Chi tiết hơn thì Android gồm các thành phần quan trọng sau: 1. Một thiết kế phần cứng cho thiết bị di động hỗ trợ bộ phần mềm. Một nhân hệ điều hành Linux cung cấp giao diện mức thấp với phần cứng, quản lý bộ nhớ và kiểm soát tiến trình.
Tất cả đều tối ưu hoá cho thiết bị di động. Võ Tấn – CCLT04B Trang 3 Ứng dụng bác sĩ tại gia trên hê điều hành Android 3. Thư viện mã nguồn mở cho phát triển ứng dụng bao gồm SQLite, Webkit, OpenGL và quản lí đa phương tiện. Một hệ thống thực thi và lưu trữ cho ứng dụng Android bao gồm máy ảo Dalvik và các thư viện cơ bản cung cấp chức năng đặc thù cho Android.
Hệ thống thực thi được thiết kế nhỏ gọn và hiệu quả khi sử dụng trên các thiết bị di động. Một kiến trúc ứng dụng cung cấp các dịch vụ hệ thống cho tầng ứng dụng bao gồm quản lí cửa sổ, quản lí vị trí, cung cấp nội dung và các cảm biến. Một kiến trúc giao diện người dùng để lưu trữ và chạy các ứng dụng. Một số ứng dụng được cài đặt sẵn được coi như một phần của bộ ứng dụng.
Một bộ phát triển ứng dụng bao gồm các công cụ và tài liệu.1 Các thành phần của hệ điều hành Android 2. Sơ lƣợc các phiên bản Android Android là một nền tảng mới và phát triển nhanh. Các phiên bản thông thường được phát hành sau khoảng 6 tháng. Sau đây là danh sách các phiên bản chính và sự thay đổi lớn trong mỗi phiên bản Android.
OHA giới thiệu Android (5-11-2007). Phát hành SDK (12-11-2007). Võ Tấn – CCLT04B Trang 4 Ứng dụng bác sĩ tại gia trên hê điều hành Android Apple pie - Android 1.0 (23/9/2008): Phát hành phiên bản Android 1.0 trên điện thoại Android đầu tiên – HTC Dream (G1). Banana bread - Android 1.1 (9-2-2009): Phát hành phiên bản cập nhật 1.1 riêng cho T-Mobile G1.
Ice Cream Sandwich: được tuyên bố phát hành trong quí 4 năm 2011. Đây là sự kết hợp của hai phiên bản Gingerbread và Honeycomb. Tên gọi của các phiên bản Android đều được đặt theo các món tráng miệng: Hình 2.2 Logo và tên các phiên bản Android 2. Các thành phần cơ bản của ứng dụng Android Ứng dụng Android bao gồm nhiều thành phần liên kết với nhau được giới hạn trong kiến trúc ứng dụng.
Kiến trúc ứng dụng mô tả chi tiết mỗi thành phần và sự tương tác giữa các thành phần này cũng như siêu dữ liệu về yêu cầu phần cứng. Võ Tấn – CCLT04B Trang 5 Ứng dụng bác sĩ tại gia trên hê điều hành Android Các thành phần sau đây tạo nên một ứng dụng Android: Activity: là lớp thể hiện ứng dụng. Mỗi màn hình trong ứng dụng là một mở rộng của lớp Activity. Các Activity sử dụng các View tạo thành giao diện đồ họa tương tác người dùng để thể hiện thông tin và phản hồi hành động của người dùng.
Service: là thành phần chạy ẩn, cập nhật nguồn dữ liệu và thể hiện các Activity, kích hoạt các Notification. Các Service thường thực hiện các xử lí thông thường như tiếp tục Activity sau khi các Activity này không hoạt động hoặc hiển thị. Content Provider: là thành phần lưu trữ dữ liệu chia sẻ. Content Provider quản lí và chia sẻ cơ sở dữ liệu của ứng dụng.
Chúng được coi như là phương tiện chia sẻ dữ liệu giữa các ứng dụng. Intent: là cấu trúc truyền thông điệp giữa các ứng dụng. Chúng ta có thể sử dụng Intent để truyền một thông tin tới toàn hệ thống hay tới Activity hay Service định trước để thực thi một hoạt động. Hệ thống sau đó sẽ xác định đối tượng nào sẽ thực hiện các hoạt động phù hợp.
Broadcast Receiver: là nơi nhận các Intent. Chúng ta có thể tự tạo một Broadcast Receiver để ứng dụng có thể nhận được các Intent phù hợp với bộ lọc đặt trước. Broadcast Receiver tự động bắt đầu khi ứng dụng phản hồi với Intent nhận được và biến ứng dụng trở thành hướng sự kiện một cách hoàn hảo. Widget: thành phần trực quan của ứng dụng có thể thêm vào màn hình chính.
Là một dạng Broadcast Receiver, Widget cho phép người dùng tạo ra các ứng dụng động, tương tác được nhúng ngay trên màn hình chính. Notification: là thành phần thông báo cho người dùng. Hộp thoại thông báo cho người dùng mà không gián đoạn các Activity hiện thời. Đây là kĩ thuật thông báo cho người dùng năm trong một Service hay một Broadcast Receiver.