Ý TƯỞNG VỀ PHẦN MỀM
1. Lịch sử ra đời của Android
Hiện nay, trên thị trường có rất nhiều loại điện thoại ra đời kèm theo đó là
các hệ điều hành(OS mobile) cho loại điện thoại đó. Thường thì các hệ điều hành
này được cung cấp kèm theo máy và là mã nguồn đóng. Nhưng trong số những
OS mobile là mã nguồn mở đó là Android. Android là hệ điều hành cho các thiết
bị cầm tay dựa trên lõi Linux do công ty Android Inc. (California, Mỹ) thiết kế.
Công ty này sau đó được Google mua lại vào năm 2005 và sau tiếp, vào năm
2007, thuộc về Liên doanh Thiết bị Cầm tay Mã Nguồn mở (Open Handset
Alliance) gồm các đại gia trong ngành viễn thông và thiết bị cầm tay như Texas
Instruments, Broadcom Corporation, Google, HTC, Intel, LG, Marvell
Technology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint
Nextel, T-Mobile, ARM Holdings, Atheros Communications, Asustek Computer
Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, and Vodafone Group
Plc (tính đến nay)
Có thể coi mốc 05-11-2007 là ngày Android được công bố ra toàn thế giới
cùng với sự ra đời của liên danh OHA nói tên trên, và 18-8-2008, các lập trình
viên Android được phép tiếp cận và sử dụng mã nguồn mở để lập trình ứng dụng
cho hệ điều hành này.
Càng ngày càng có nhiều thiết bị sử dụng OS Android. Dưới đây là biểu
đồ thống kê so sánh các hệ điều hành cho điện thoại di động năm 2009 và quý 1
năm 2010 tại Mỹ
Nhìn vào biểu đồ này ta có thể thấy được sự phát triệt vượt bậc của OS Android
trong 4 quý trở lại đây.
2. Công nghệ sử dụng
Để lập trình một phần mềm ứng dụng cho OS Android cần sử dụng ngôn ngữ
lập trình là Java. Java là ngôn ngữ lập trình hướng đối tượng, mã nguồn mở nên
có thể kế thừa từ những tài nguyên có sẵn. Giúp cho những lập trình viên ít kinh
nghiệm và sinh viên tiếp cận nhanh chóng và lập trình không còn trở nên khó
khăn như trước đây.
Ngoài ra còn có các công cụ và ngôn ngữ khác như: php để thực hiện truy vấn
CSDL mySQL trả về một XML document lưu nội dung kết quả tìm được.
MySQL là cơ sở dữ liệu mã nguồn mở có kèm theo trong phần mềm
webserver Xampp.
SAX parser: dùng là một lớp đặc biệt trong java để phân tích và lấy giá trị file
xml trả về.
3. Giới thiệu phần mềm AndCom của nhóm
AndCom viết tắt của Android Comic là tên phần mềm đọc truyện tranh trên
thiết bị chạy hệ điều hành Android của nhóm chúng em.
Hiện nay trên thị trường Việt Nam mới chỉ có một phần mềm mang ý tưởng
tương tự nhưng chỉ chạy trên các chạy trên một số dòng máy chạy OS mã nguồn
đóng như Sybian (Nokia), Samsung, Sony Ericsson … Việc này dẫn đến việc
phát triển trở nên khó khăn hơn cho lập trình viên.
Chủ yếu OS Android chạy trên các dòng máy cảm ứng, có màn hình rộng và
thường có độ phân giải 320x480 do vậy sẽ là ưu điểm cho việc đọc truyện tranh.
Do đặc điểm truyện tranh là định dạng ảnh (Bitmap) nên độ phân giải và ưu
điểm của tính năng cảm ứng sẽ được phát huy tối đa.
Phần mềm AndCom của nhóm được phát triển dựa trên môi trường và các
công cụ lập trình mã nguồn mở, có tính tương thích cao và trên hết là phần mềm
“hợp pháp” có bản quyền và chi phí đầu tư để mua các phần mềm hỗ trợ lập
trình AndCom là bằng 0.
MÔ TẢ CÀI ĐẶT MÔI TRƯỜNG VÀ CÔNG CỤ HỖ
TRỢ LẬP TRÌNH
1. Các công phần mềm cần chuẩn bị
TÊN PHẦN MỀM LÝ DO SỬ DỤNG LINK DOWNLOAD
HĐH Ubuntu 9.04 Là phiên bản Ubuntu ổn
định nhất.
Ubuntu for PC (Intel
x86) desktop CD
JDK 1.6 Là bộ công cụ biên dịch
Java mới nhất.
JDK for Linux
Eclipse 3.5 Galileo Theo khuyến cáo của
Google đây là IDE phù
hợp nhất.
Eclipse for Linux
ADT 0.9.6 Là plugin của Eclipse do
Google tạo ra để hỗ trợ
lập trình viên
ADT for Eclipse
Android SDK Là máy ảo Android để
thử nghiệm các phần
mềm AndCom
SDK for Linux
Xampp Web server dùng để lưu
trữ dữ liệu truyện, php và
mySQL lưu trữ dữ liệu.
XAMPP Linux 1.7.3a
2. Hướng dẫn cài đặt eclipse và SDK android
CÀI ĐẶT JAVA JDK online
Trước khi cài đặt phải đảm bảo là máy đã được kết nối mạng
- Vào terminal gõ lệnh: $sudo –s
- Điền password root
- Rồi gõ lệnh cài đặt JDK: $apt-get install sun-java6-jdk
- Chờ vài phút và chấp nhận các điều khoản của Sun
GIẢI NÉN CÁC FILE ĐÃ DOWNLOAD
- Giải nén: $tar xvfz [tên file]
UPDATE PLATFORM ANDROID SDK
- Di chuyển đến thư mục android-sdk vừa giải nén và gõ lệnh: $./Setup SDK
- Chương trình Android SDK manager sẽ hiện lên bây giờ update các gói
công cụ hỗ trợ
Ta tích hết rồi tiến hành update.
CÀI ĐẶT PLUG-IN ADT CHO ECLIPSE
- Di chuyển vào thư mục eclipse gõ lệnh: $./eclipse
- Khi eclipse khởi động lên tiến hành cài đặt như sau:
- Mở eclipse lên, bấm vào Help ◊ Install new software.
- Ở cái form hiện lên, chọn Add…
- Ở mục Name, ví dụ như ADT plugin
- Ở mục Location, nhập vào link này: http://dl-
ssl.google.com/android/eclipse/
- Sau đó bấm OK, rồi bấm next cho đến lúc xong.
- Vào Windows -> Preferences. Bên phía trái, chọn entry Android.
- Browse đến thư mục android-sdk
CÀI ĐẶT WEB SERVER XAMPP
- Di chuyển đến thư mục chứa file xampp đã download về và dùng lệnh:
$tar xvfz xampp-linux-1.7.3a.tar.gz –C /opt
- Khởi động Xampp bằng lệnh: $/opt/lampp/lampp start
Vậy là ta đã hoàn thành việc cài đặt các công cụ hỗ trợ lập trình cho Android.
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
AndCom (version 1.0)
1. Yêu cầu bài toán đặt ra
AndCom là một phần mềm đọc truyện trực truyến trên thiết bị chạy OS
Android thông qua mạng 3G, GPRS, WIRELESS…tùy kết nối của thiết bị.
Phần mềm phải có tính mềm dẻo tương thích với nhiều thiết bị khác nhau.
Đặc biệt là phải tận dụng tối đa tính cảm ứng của thiết bị.
Hệ thống phải có một hoặc nhiều kho lưu trữ truyện khác nhau trên các host,
dùng CSDL để quản lý link dẫn đến các quyển truyện.
Các chức năng trong màn hình chính:
- Khi khởi động vào phần mềm sẽ tự động hiển thị ra danh sách các truyện
theo nhóm. Nhóm truyện được chia làm 3 nhóm.
• Nhóm 1: Truyện mới ra cần được hiển thị lên trên cùng.
• Nhóm 2: Truyện hot được nhiều người đọc nhất
• Nhóm 3: nhóm Orther là những truyện khác sẽ không được hiển thị
trên màn hình chính.
- Di chuyển sang các chức năng khác như: đọc truyện, tìm kiếm, thoát.
Phần mềm phải có chức năng đọc truyện, trong chức năng đọc truyện thì phải
đáp ứng các yêu cầu tối thiểu như:
- Sang trang
- Lùi trang
- Nhảy tới trang.
- Quay lại trang chủ.
- Sang chức năng tìm kiếm.
Chức năng tìm kiếm:
- Chức năng tìm kiếm theo tên truyện yêu cầu là tìm kiếm “tương đối”. Như
là người dùng không biết rõ tên quyển truyện thì vẫn có thể dùng một vài từ
khóa nhất định để tìm ra nó: VD: Ta muốn tìm quyển “Bảy viên ngọc rồng”
nhưng người dùng vẫn có thể tìm bằng cách gõ từ khóa “Bảy viên” hoặc
“ngọc rồng” hoặc có thể viết tiếng Việt không dấu vẫn có thể tìm ra được.
2. Giải quyết bài toán
2.1 Biểu đồ phân cấp chức năng
- Chức năng đọc truyện:
• Sang trang: Người dùng có thể sang trang mới bằng 2 cách, nhấn
menu trên bàn phìm và menu hiện lên chọn next page và kéo sang bên
trái rồi thả ra.
• Lùi trang: Người dùng có thể lùi trang bằng 2 cách, nhấn menu trên
bàn phìm và menu hiện lên chọn next page và kéo sang bên trái rồi thả
ra.
• Nhảy tới trang: Người dùng có thể nhảy tới bất kỳ trang nào nếu có
bằng cách click và giữ khoảng 1s thì sẽ hiện lên bảng chức năng cho
phần đọc truyện
- Chức năng tìm kiếm:
• Tìm kiếm theo tên: Nhập tên hoặc 1 phần của tên quyển truyện muốn
tìm kiếm. Sau khi tìm kiếm sẽ hiển thị ra danh sách các truyện tìm
được.
• Sắp sếp theo bình chọn: chức năng này được tự động thực hiện để
người dùng có thể nhanh chóng tìm được truyện mình cần.
• Hiện thị danh sách mặc định: là một chức năng đặc biệt của việc tìm
kiếm. Ở đây là tìm kiếm theo tiêu chí là một nhóm truyện nào mà lập
trình viên muốn. Là một chức năng được tự động khởi động trong màn
hình chính, nó cho phép nhà ta muốn người dùng nhìn thấy những cuốn
truyện nào đầu tiên. Như là truyện HOT, hay truyện mới ra.
- Hiển thị danh sách:
• Hiển thị thông tin mô tả: Nội dung có thể là thông tin về quyển
truyện đó, cảnh báo, hay bất kỳ điều gì mà Adminnistrator muốn.
2.2 Mô hình client - server của AndCom
2.3 Biểu đồ luồng dữ liệu mức đỉnh
2.4 Biểu đồ luồng dữ liệu chức năng đọc truyện
2.5 Biểu đồ luồng dữ liệu chức năng tìm kiếm
2.6 Biểu đồ luồng dữ liệu chức năng hiển thị danh sách
2.7. Bảng mô tả cở sở dữ liệu sử dụng
Trong cơ sở dữ liệu của hệ thống hiện tại chỉ có một bảng tên là comics_details
TÊN TRƯỜNG KIỂU DỮ LIỆU NỘI DUNG
ID Int(6) Lưu mã nhận dạng của mỗi quyển truyện,
và là khóa chính của bảng.
SHORT_TITLE VARCHAR(80) Tên bộ truyện.
TITLE VARCHAR(80) Tên tập.
RATE INT(1) Mức đánh giá (5 mức, 1-5 sao).
PATH VARCHAR(200) Link dẫn đến truyện.
GROUP_ID INT(1) Nhóm truyện, nhóm 1: truyện mới, nhóm
2: truyện HOT, nhóm 3: các thể loại khác.
DESCRIPTON VARCHAR(400) Mô tả thông tin quyển truyện của nhà xuất
bản.
QUÁ TRÌNH THỬ NGHIỆM PHẦM MỀM TRÊN
MÁY ẢO ANDROID SDK