Hồ Chí Minh, ngày 1 tháng 2 năm 2012 Sinh viên: Nguyễn Minh HuyPhan Đình Tùng LỜI GIỚI THIỆU Tiếp thu ý kiến từ giảng viên hướng dẫn, nhóm chúng tôi sẽ xây dựng mộtchương trình đọc sách
Trang 1NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Ngày … tháng …… năm 2012 Giáo viên hướng dẫn [Ký và ghi rõ họ tên] ………
Trang 2NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Ngày … tháng …… năm 2012 Giáo viên phản biện [Ký và ghi rõ họ tên] ………
Trang 3MỤC LỤC
MỤC LỤC 3 DANH MỤC HÌNH 7
LỜI GIỚI THIỆU 10
CHƯƠNG I: CÁC THIẾT BỊ VÀ NỀN TẢNG TRÊN THIẾT BỊ DI ĐỘNG PHỔ BIẾN HIỆN NAY 12
1 Thị trường Smartphone hiện nay 12
2 Sơ lược về một số dòng thiết bị và nền tảng hiện có 14
3 Thống kê ứng dụng trên các hệ điều hành phổ biến 16
CHƯƠNG II: TỔNG QUAN VỀ ANDROID 17 1 Android là gì? 17
2 Sơ lược về lịch sử Android 17
3 Tính năng của Android 19
4 Kiến trúc Android 19
4.1 Applications 20
4.2 Application Framework 20
4.3 Libraries 21
4.4 Android Runtime 22
4.5 Linux Kernel 22
CHƯƠNG III: XÂY DỰNG CHƯƠNG TRÌNH ỨNG DỤNG 23 1 Xác định yêu cầu chức năng của hệ thống 23
Trang 42 Phân tích hệ thống 23
2.1 Giới thiệu Use-Case, Actor 23
2.2 Mô hình Use-Case 25
2.3 Mô tả Use-Case 26
2.3.1 SelectBook 26
2.3.2 BookShelf 27
2.3.3 Listview 27
2.3.4 Book 28
2.3.5 SearchBook 29
2.3.6 Author 30
2.3.7 Subject 31
2.3.8 FileName 32
2.3.9 ReadBook 32
2.3.10 SeeContents 34
2.3.11 AdjustOriented 34
2.3.12 NextPreviousPage 36
2.3.13 Dictionary 36
2.3.14 AdjustTextSize 37
2.3.15 SeeLink 38
2.3.16 PlayAudioVideo 38
2.3.17 Highlight 39
2.3.18 Note 40
2.3.19 SeeNote 43
2.3.20 SearchWord 43
Trang 52.3.21 TurnToPage 44
2.3.22 AdjustScreenMode 45
2.3.23 VisibleHidePageNumber 46
2.3.24 ChangeDayNight 47
2.3.25 Help 48
2.3.26 Home 49
2.3.27 RememberPage 49
2.3.28 Zoom 50
2.3.29 BackgroundMusic 50
2.3.30 BookStore 51
2.3.31 SearchBookInStore 51
2.3.32 DownloadBook 52
2.3.33 Lastest 53
2.4 Biểu đồ trình tự mức phân tích (Sequence Diagram) 54
2.4.1 Highlight 54
2.4.2 Note 56
2.4.3 NextPreviousPage 59
2.4.4 BackgroundMusic 59
2.5 Biểu đồ trình tự mức thiết kế (Sequence Diagram) 60
2.5.1 Highlight 60
2.5.2 Note 62
2.5.3 NextPreviousPage 65
2.5.4 BackgroundMusic 65
2.6 Biểu đồ cộng tác (Collaboration Diagram) 66
Trang 62.6.1 Highlight 66
2.6.2 Note 66
2.6.3 Flip3D 68
2.6.4 BackgroundMusic 68
2.7 Biểu đồ hoạt động (Activity Diagram) 69
2.7.1 Highlight 69
2.7.2 Note 71
2.7.3 Flip3D 74
2.7.4 BackgroundMusic 74
2.8 Biểu đồ lớp (Class Diagram) 75
2.8.1 Highlight 75
2.8.2 Note 76
2.8.3 Flip3D 78
2.8.4 BackgroundMusic 79
2.9 Một số hình ảnh minh họa chương trình 79
TỰ ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN 82 TÀI LIỆU THAM KHẢO 83 Tiếng anh 83
Internet 83
Trang 7DANH MỤC HÌNH
Hình I.1.1 Thị trường smartphone thế giới quý 3 năm 2011 13
Hình I.3.1 Thống kê ứng dụng trên các hệ điều hành phổ biến 17
Hình II.4.1 Kiến trúc Android 21
Hình III.2.2 Sơ đồ use case 26
Hình III.2.4.1.1 Biểu đồ trình tự mức phân tích AddHighlight 55
Hình III.2.4.1.2 Biểu đồ trình tự mức phân tích DeleteHighlight 56
Hình III.2.4.2.1 Biểu đồ trình tự mức phân tích AddNote 57
Hình III.2.4.2.2 Biểu đồ trình tự mức phân tích DeleteNote 58
Hình III.2.4.2.3 Biểu đồ trình tự mức phân tích EditNote 59
Hình III.2.4.3.1 Biểu đồ trình tự mức phận tích Flip3D 60
Hình III.2.4.4.1 Biểu đồ trình tự mức phân tích BackgroundMusic 60
Hình III.2.5.1.1 Biểu đồ trình tự mức thiết kế AddHighlight 61
Hình III.2.5.1.1 Biểu đồ trình tự mức thiết kế DeleteHighlight 62
Hình III.2.5.2.1 Biểu đồ trình tự mức thiết kế AddNote 63
Hình III.2.5.2.2 Biểu đồ trình tự mức thiết kế DeleteNote 64
Hình III.2.5.2.3 Biểu đồ trình tự mức thiết kế EditNote 65
Hình III.2.5.3.1 Biểu đồ trình tự mức thiết kế Flip3D 66
Hình III.2.5.4.1 Biểu đồ trình tự mức thiết kế BackgroundMusic 66
Hình III.2.6.1.1 Biểu đồ cộng tác Highlight 67
Hình III.2.6.2.1 Biểu đồ cộng tác AddNote 67
Hình III.2.6.2.2 Biểu đồ cộng tác DeleteNote 68
Trang 8Hình III.2.6.3.1 Biểu đồ cộng tác Flip3D 69
Hình III.2.6.4.1 Biểu đồ cộng tác BackgroundMusic 69
Hình III.2.7.1.1 Biểu đồ hoạt động AddHighlight 70
Hình III.2.7.1.2 Biểu đồ hoạt động DeleteHighlight 71
Hình III.2.7.2.1 Biểu đồ hoạt động AddNote 72
Hình III.2.7.2.2 Biểu đồ hoạt động DeleteNote 73
Hình III.2.7.2.3 Biểu đồ hoạt động EditNote 74
Hình III.2.7.3.1 Biểu đồ hoạt động Flip3D 75
Hình III.2.7.4.1 Biểu đồ hoạt động BackgroundMusic 75
Hình III.2.8.1.1 Biểu đồ lớp DeleteHighlight 76
Hình III.2.8.1.2 Biểu đồ lớp DeleteHighlight 76
Hình III.2.8.2.1 Biểu đồ lớp AddNote 77
Hình III.2.8.2.1 Biểu đồ lớp DeleteNote 78
Hình III.2.8.2.1 Biểu đồ lớp EditNote 79
Hình III.2.8.3.1 Biểu đồ lớp Flip3D 79
Hình III.2.8.4.1 Biểu đồ lớp BackgroundMusic 80
Hình III.2.9.1 Biểu tượng chương trình 80
Hình III.2.9.2 Một số tùy chọn trong chương trình 81
Hình III.2.9.3 Giao diện hiển thị sách 81
Hình III.2.9.4 Giao diện đọc sách 82
Trang 9LỜI CẢM ƠN
Để hoàn thành chương đề tài hướng nghiệp, chúng em đã nhận được sựhướng dẫn, giúp đỡ và góp ý nhiệt tình của quý thầy cô trường Đại học Hùng VươngThành phố Hồ Chí Minh
Trước hết, chúng em xin chân thành cảm ơn đến quý thầy cô trường Đại họcHùng Vương Thành phố Hồ Chí Minh, đặc biệt là những thầy cô đã tận tình dạy bảocho chúng em suốt thời gian học tập tại trường
Chúng em xin gửi lời biết ơn sâu sắc đến thầy Nguyễn Minh Hoàng, chịNguyễn Thị Phương Trang đã dành rất nhiều thời gian và tâm huyết hướng dẫn vàgiúp chúng em hoàn thành đề tài hướng nghiệp
Nhân đây, chúng em xin chân thành cảm ơn Ban Giám hiệu trường Đại họcHùng Vương Thành phố Hồ Chí Minh cùng quý thầy cô trong Khoa Công NghệThông Tin đã tạo rất nhiều điều kiện để chúng em học tập
Chúng em đã có nhiều cố gắng hoàn thiện đề tài hướng nghiệp, tuy nhiên
Trang 10của quý thầy cô và các bạn.
TP Hồ Chí Minh, ngày 1 tháng 2 năm 2012
Sinh viên:
Nguyễn Minh HuyPhan Đình Tùng
LỜI GIỚI THIỆU
Tiếp thu ý kiến từ giảng viên hướng dẫn, nhóm chúng tôi sẽ xây dựng mộtchương trình đọc sách trên nền các thiết bị động chạy hệ điều hành Android củaGoogle Trước tiên, nhóm chúng tôi sẽ nói về lợi ích và trở ngại của việc đọc sáchtruyền thống, tiếp theo là lý do tại sao chúng tôi chọn hệ điều hành Android để xâydựng chương trình và cuối cùng chúng tôi sẽ nói về nội dung chúng tôi sẽ trình bày
Về lợi ích, đọc sách là một nhu cầu không thể thiếu của con người, đọc sách
giúp ta:
Rèn luyện trí tưởng tượng, sự liên tưởng, sự sáng tạo
Rèn luyện trí thông minh ngôn ngữ
Tăng cường khả năng giao tiếp
Thành công hơn trong học tập và cuộc sống
Và còn nhiều lợi ích khác do việc đọc sách mang lại
Nhưng việc đọc sách truyền thống gặp nhiều khó khăn và trở ngại, nhóm chúng
tôi xin phép kể ra một vài trở ngại sau:
Trang 11 Việc ghi chú mất nhiều thời gian, khó khăn trong việc đánh dấu và tìm lạighi chú.
Việc đọc sách nhàm chán, đọc chậm và thiếu tập trung do không, hoặc khókhăn trong việc kết hợp với âm nhạc (nhạc không lời nhịp độ nhanh)
Việc tìm lại vị trí trang đang đọc (trong trường hợp quyển sách chưa đọc hết)mất nhiều thời
Vì vậy chúng ta cần một giải pháp, và giải pháp ở đây là xây dựng một chương
trình mà có thể:
Ghi chú nhanh chóng, dễ dàng trong việc đánh dấu và tìm lại ghi chú
Đọc sách thú vị hơn, đọc nhanh và tập trung hơn kết hợp với âm nhạc
Tìm vị trí trang đang đọc (trong trường hợp quyển sách chưa đọc hết) nhanhchóng và dễ dàng
Trải nghiệm lật trang như thật với cơ chế lật trang 3D
Và chương trình được xây dựng sẽ chạy trên hệ diều hành Android Chúng tôichọn hệ điều hành Android với những lý do:
Tính mở: không cần phải trả phí khi xây dựng ứng dụng Các nhà phát triển
có thể tải về xây dựng lại theo ý mình, mà không bị ảnh hưởng về mặt pháplý
Là một hệ điều hành multitasking (đa nhiệm): có thể cùng lúc nhận thông
báo, nghe nhạc, soạn thảo và nhiều ứng dụng khác
Hướng đi mới cho các lập trình viên di động.
Cuối cùng, phần trình bày của chúng tôi bao gồm:
1 Các thiết bị và nền tảng trên thiết bị di động phổ biến hiện nay
2 Tổng quan về Android
3 Xây dựng chương trình ứng dụng: xây dựng chương trình đọc sách
Trang 12CHƯƠNG I: CÁC THIẾT BỊ VÀ NỀN TẢNG TRÊN THIẾT
BỊ DI ĐỘNG PHỔ BIẾN HIỆN NAY
1 Thị trường Smartphone hiện nay
Theo công ty nghiên cứu thị trường IDC, tính đến quý 3 2011, thị trườngSmartphone thế giới đã đạt mức tăng trưởng 42,6% qua từng năm, mặc cho dấuhiệu đi xuống tại một số thị trường lớn Cũng theo IDC, các nhà sản xuất thiết bị đãbán ra tổng số 118,1 triệu sản phẩm trong quý 3 năm 2011, trong khi quý 3 năm
2010 là 82,8 triệu đơn vị Tuy nhiên, chỉ số tăng trưởng 42,6% vẫn thấp hơn so với
dự đoán của IDC là 49,1% trong quý 3 và thấp hơn mức tăng trưởng trong quý 2 là66,7%
Top 5 hãng sản xuất điện thoại lớn nhất tính đến quý 3 năm 2011:
Trang 13Hình I.1.1 Thị trường smartphone thế giới quý 3 năm 2011.
Vị trí đầu bảng thuộc về Samsung Công ty đã trở thành quán quân mới trong thị
trường smartphone thế giới với tổng số thiết bị bán ra lần đầu tiên trong lịch sử công
ty đạt mốc 20 triệu đơn vị So với các quý trước, dòng smartphone chạy Androidcủa Samsung đạt doanh số cao hơn và công lớn phải kể đến chiếc smartphoneGalaxy S II Thêm vào đó, dòng smartphone chạy Bada vẫn tiếp tục tăng trưởng
Vị trí thứ 2 thuộc về Apple Nếu như trong quý 2 năm 2011, Apple đã giành ngôi
đầu từ Nokia thì trong quý 3, Apple lại để tuột mất vào tay Samsung Tuy nhiên, xét
về doanh số của iPhone 4 trong suốt 5 quý gần đây và iPhone 3GS trong 9 quý thìnhu cầu của người dùng với iPhone vẫn đủ mạnh để Apple có thể có được mức tăngtrưởng 2 con số qua từng năm Với việc phát hành iPhone 4S cùng với việc điềuchỉnh lại giá bán cho các model cũ tại nhiều quốc gia, Apple đang ở tư thế sẵn sàng
để cướp lại ngôi đầu bảng từ tay Samsung
Vị trí thứ 3, Nokia Nokia vẫn duy trì vị trí thứ 3 của mình nhờ vào thế mạnh của
dòng điện thoại Symbian Những smartphone chạy Symbian phổ biến nhất của
Trang 144 model mới hoạt động trên phiên bản Symbian Belle cải tiến là Nokia 600, 603,
700 và 701 cùng chiếc smartphone đầu tiên chạy Meego là N9 Những model này
có thể giúp Nokia làm mới phân khúc thị trường của mình nhưng công ty vẫn gặpkhó khăn khi N9 có lẽ sẽ chỉ được bán ra giới hạn và Nokia 600 cũng đã bị hủy bỏ
Vị trí thứ 4 thuộc về HTC HTC đã bước lên một bậc và duy trì đà phát triển trong
suốt quý 3 năm 2011 Tại quý 3, HTC đã quyết định đầu tư mạnh mẽ và mua lạihàng loạt các công ty, đáng chú ý như Dashwire (dịch vụ đồng bộ hóa đám mây)hay Zoodles (tạo ra các ứng dụng cho trẻ em) Đặc biệt, HTC cũng đánh cược vàocông ty chuyên sản xuất các thiết bị âm thanh Beats Audio Trong thời gian này,HTC đã nhanh chóng áp dụng công nghệ mới và cho ra mắt hàng loạt thiết bị dànhcho từng phân khúc riêng như giải trí đa phương tiện với HTC Sensation, kháchhàng nữ giới với HTC Rhyme và dòng bình dân như HTC Explorer
Vị trí thứ 5, Research In Motion Trong quý 3, RIM đã bắt đầu phát hành loạt thiết
bị mới chạy BlackBerry OS 7, bao gồm các phiên bản cập nhật của dòng Bold,Curve và Torch Tuy nhiên, so với các quý trước, doanh số của công ty bao gồmchủ yếu là các dòng máy cũ, giá rẻ hơn và điều này khiến mức tăng trưởng của RIMgiảm sút và tụt xuống vị trí thứ 5 Mặc dù vậy, vẫn đủ để RIM duy trì sự hiện diệncủa mình tại top 5 nhà sản xuất
2 Sơ lược về một số dòng thiết bị và nền tảng hiện có
Symbian – Nokia, Motorola, Ericssion
Ra đời sớm nhất trên thế giới
Tiền thân là Psion (Davide potter 1980)
Hệ điều hành phím chức năng, màn hình cảm ứng
Công cụ lập trình: ngôn ngữ C/C++ J2ME
RIM – BlackBerry
Phần cứng hạn chế
Trang 15 Là một hệ điều hành smartphone linh hoạt.
Thành lập 1995 đến 8/1998 RIM Inter@ctive Pager
Hệ điều hành: checkball, phím chức năng, bàn phím rộng nhiều phímbấm
Công cụ lập trình: ngôn ngữ Java và bộ JDE
Windows Mobile – Microsoft
Windows cho thiết bị di động
Tháng 8 năm 2000 windows modile dành cho PC pocket ra đời
Nền tảng từ nhân của windows CE 3.0
Hệ điều hành: cảm ứng đa điểm
Công cụ lập trình: Object C và iPhone SDK
Android – Google
Được phát triển bởi Google từ năm 2005
Môi trường mở hoàn toàn
Trang 16 Hạt nhân Linux 2.6 với các thư viện mở.
Hệ điều hành: checkball, cảm ứng, phím bấm
Công cụ lập trình: ngôn ngữ Java và Android SDK
Bada – Samsung
Được phát triển bởi tập đoàn Samsung
Đang được Samsung quảng bá rộng
Tháng 10 năm 2010 ra mắt tại Barcelona
Rất có khả năng về nền tảng mạnh về đồ họa và game
Hệ điều hành: phím bấm, cảm ứng
Công cụ lập trình: ngôn ngữ C++ và Bada SDK
3 Thống kê ứng dụng trên các hệ điều hành phổ biến
Sau đây là thống kê ứng dụng trên các hệ điều hành phổ biến hiện nay, tính đếntháng 3 năm 2001:
Hình I.3.1 Thống kê ứng dụng trên các hệ điều hành phổ biến.
Trang 17Qua thống kê trên có thể thấy được sự phát triển vượt bậc của hệ điều hànhAndroid, hiện chỉ đứng sau hệ điều hành iPhone của Apple Với đà phát triển này,cùng với tính mở của hệ điều hành thì trong tương lai không xa hệ điều hànhAndroid có thể đánh bại iPhone và vươn lên vị trí dẫn đầu.
CHƯƠNG II: TỔNG QUAN VỀ ANDROID
1 Android là gì?
Android là một phần mềm phân tầng (software stack) chạy trên các thiết bị diđộng, bao gồm một hệ thống điều hành, middleware và các ứng dụng chủ yếu trênthiết bị di động
2 Sơ lược về lịch sử Android
Tháng 10 năm 2003 Android Inc được thành lập tại Palo Alto, California bởiAndy Rubin, Rich Miners Nick Sears và Chris White
Tháng 8 năm 2005 Google mua lại Android Inc
Ngày 5 tháng 11 năm 2007 Open Handset Alliance, liên minh giữa các nhà sảnxuất được thành lập
Ngày 12 tháng 11 năm 2007 phát hành Android Beta SDK (gói phát triển phần
Trang 18Ngày 23 tháng 9 năm 2008 thiết bị chạy Android đầu tiên được giới thiệu, chiếcHTC Dream (G1) chạy Android 1.0
Android 1.0:
HTML và XHTML các trang web hiển thị dưới dạng cửa sổ.
Ngày 9 tháng 2 năm 2009 phát hành bản cập nhật Android 1.1 dành riêng choT-Mobile G1
Ngày 30 tháng 4 năm 2009 phát hành bản cập nhật Android 1.5 (Cupcake) dựatrên nhân Linux 2.6.27
Android 1.5 (Cupcake):
Ngày 15 tháng 9 năm 2009 phát hành bộ SDK dành cho Android 1.6 (Donut)dựa trên nhân Linux 2.6.29
Android 1.6 (Donut):
năng chuyển đổi giữa chế độ quay phim và chụp hình.
Trang 19 Bổ sung widget Tips (những mẹo sử dụng) lên màn hình chính.
Ngày 6 tháng 12 năm 2010 phát hành bộ SDK Android 2.3 (GingerBread)
Android 2.3 (GingerBread):
Ngày 22 tháng 2 năm 2011 phát hành Android 2.3.3 dựa trên nhân Linux 2.6.35.Ngày 10 tháng 5 năm 2011 SDK 3.0 dành cho tablet được phát hành dựa trênnhân Linux 2.6.36
Ngày 10 tháng 5 năm 2011 SDK Android 3.1 được phát hành
Ngày 10-11 tháng 5 năm 2011 Google phát hành Ice Cream Sandwich tạiGoogle I/O
Ngày 18 tháng 7 năm 2011 phát hành bộ SDK Android 3.2
3 Tính năng của Android
Application framework cho phép sử dụng lại và thay thế các thành
phần
Trang 20 Integrared browser dựa trên bộ máy mã nguồn mở WebKit.
Optimized graphics được hỗ trợ bởi một thư viện đồ họa 2D; 3D xây
dựng lại dựa trên đặc tính của OpenGL ES 1.0
SQLite lưu trữ dữ liệu có cấu trúc.
Media support cho audio, video thông thường và định dạng hình ảnh
(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
GSM Telephony (phụ thuộc phần cứng).
Bluetooth, EDGE, 3G, và WiFi (phụ thuộc phần cứng).
Camera, GPS, compass, and accelerometer (phụ thuộc phần cứng).
Rich development environment bao gồm một thiết bị giả lập, các công
cụ để gỡ lỗi, sơ lược về hiệu năng và bộ nhớ
Trang 21Các nhà phát triển có thể truy cập vào cùng framework APIs được sử dụngbởi các ứng dụng cốt lõi Kiến trúc ứng dụng được thiết kế để đơn giản hóa việc sửdụng lại các thành phần; bất kỳ ứng dụng nào đều có thể công bố khả năng củachúng và bất kỳ ứng dụng nào khác có thể sau đó tạo ra sử dụng những khả năng
đó Cơ chế này cũng cho phép các thành phần được thay thế bởi người sử dụng
Dưới tất cả tất các ứng dụng là một bộ các dịch vụ và hệ thống, bao gồm:
Một bộ các View phong phú và có khả năng mở rộng có thể dùng để
xây dựng một ứng dụng, bao gồm lists, grids, text boxes, buttons, vàthậm chí có thể lồng vào trình duyệt web
Content Providers có thể cho phép các ứng dụng xử lý dữ liệu từ các
ứng dụng khác (giống như danh bạ), hoặc để chia sẽ dữ liệu của bảnthân chúng
Một Resource Manager, cung cấp xử lý đến các tài nguyên non-code
giống như các string, graphic, layout file đã được xác định
Một Notification Manager cho phép tất cả các ứng dụng hiển thị các
thông báo thông thường trong thanh trạng thái
Một Activity Manager quản lý vòng đời của ứng dụng và cung cấp
một navigation backtack phổ biến
Trang 224.3 Libraries
Android chứa một một thư viện C/C++ được sử dụng bởi nhiều thành phầnkhác nhau của hệ điều hành Android, khả năng này được phơi bày cho các nhà pháttriển thông qua Android application framework Một vài thư viện cốt lõi được liệt
kê bên dưới:
System C library - một BSD được lấy từ thư viện hệ thống C tiêu
chuẩn, được điều chỉnh để nhúng vào các thiết bị chạy Linux
Media Library – dựa trên OpenCORE của PacketVideo; các thư viện
hỗ trợ phát và thu nhiều định dạng audio và video phổ biến, giống nhưcác tập tin hình ảnh tỉnh, gồm MPEG4, H.264, MP3, AAC, AMR,JPG, và PNG
Surface Manager – quản lý truy cập đến các hệ thống con và liên tục
hiển thị kết hợp tầng đồ họa 2D và 3D từ nhiều ứng dụng
LibWebCore – một công cụ trình duyệt web hiện đại có thể chạy trên
cả hai trình duyệt Android và web view có thể nhúng vào
SGL – công cụ đồ họa 2D cơ bản.
3D libraries – một bộ thư viện đồ họa 3D dựa trên OpenGL ES 1.0
APIs
FreeType – biểu diễn font chữ bitmap và vector.
SQLite – một công cụ cơ sở dữ liệu mạnh mẽ và nhẹ có sẵn cho tất cả
các ứng dụng
4.4 Android Runtime
Android chứa một bộ các thư viện cốt lõi mà cung cấp hầu hết các chức năng
có sẵn trong các thư viện của ngôn ngữ lập trình Java
Mỗi ứng dụng Android chạy trong tiến trình riêng của nó, với một đối tượngmáy ảo của riêng nó Davik đã được viết để cho một thiết bị có thể chạy nhiều máy
ảo hiệu quả VM Davik xử lý các tập tin trong định dạng Dalvik Executable (.dex)được tối ưu hóa cho bộ nhớ tối thiểu VM là một đăng ký dựa trên, và chạy các lớpứng dụng được biên dịch bởi một trình biên dịch ngôn ngữ Java đã được chuyển đổisang định dạng dex bằng công cụ “dx”
Trang 23Davik VM dựa trên nhân Linux với các chức năng cơ bản giống như quản lýtiến trình và bộ nhớ ở mức thấp.
4.5 Linux Kernel
Android dựa trên Linux phiên bản 2.6 với các dịch vụ hệ thống cốt lõi nhưbảo mật, quản lý bộ nhớ, quản lý tiến trình, network stack và driver model Hạtnhân cũng đóng vai trò như một lớp trừu tượng giữa phần cứng và phần còn lại củastack phần mềm
CHƯƠNG III: XÂY DỰNG CHƯƠNG TRÌNH ỨNG DỤNG
1 Xác định yêu cầu chức năng của hệ thống
Chương trình đọc sách phải đáp ứng những yêu cầu sau:
Đọc được định dạng ePub và PDF
Đánh dấu trực tiếp trên văn bản và lưu lại thay đổi
Thêm, xóa, sửa ghi chú tại vị trí đã đánh dấu (có thể click trực tiếp vào vịtrí đã đánh dấu để xem lại ghi chú) dễ dàng, nhanh chóng so với ghi chúbằng tay
Trải nghiệm lật trang như thật với cơ chế lật trang 3D
Chạy nhạc nền
Tìm kiếm sách theo tiêu đề, tên tác giả, chủ đề, tên file giúp tiết kiệm50% thậm chí 80% thời gian so với tìm kiếm sách trong thực tế
Trang 24 Chuyển đến một trang bất kỳ nhanh chóng mà không cần tốn nhiều thờigian và công sức để lật và dò tìm trang sách.
Tìm kiếm từ khóa theo ý muốn nhanh chóng và dễ dàng
Xem liên kết, nghe audio hoặc xem video (trong trường hợp trang sách cóđính kèm)
6) Author: Tìm kiếm sách theo tên tác giả
7) Subject: Tìm kiếm sách theo chủ đề
8) FileName: Tìm kiếm sách theo tên tập tin
9) ReadBook: Đọc sách
10)SeeContents: Xem mục lục
11)AdjustOriented: Điều chỉnh hướng đọc
12)NextPreviousPage: Chuyển trang
13)Dictionary: Từ điển
14)AdjustTextSize: Chỉnh sửa kích thước văn bản
15)SeeLink: Xem liên kết
16)PlayAudioVideo: Nghe audio hoặc xem video
17)Highlight: Đánh dấu trong văn bản
18)Note: Ghi chú
19)SeeNote: Xem lại ghi chú
20)SearchWord: Tìm kiếm từ khóa
Trang 2521)TurnToPage: Chuyển đến trang bất kỳ22)AdjustSrcreenMode: Chỉnh sửa độ sáng, tối của màn hình.
23)VisibleHidePageNumber: Hiện/Ẩn số trang
24)ChangeDayNight: Thay đổi chế độ đọc ngày hoặc đêm
30)BookStore: Cửa hàng sách trực tuyến
31)SearchBookInStore: Tìm kiếm sách trong cửa hàng sách trựctuyến
32)DownloadBook: Tải sách từ cửa hàng sách trực tuyến
33)Lastest: Hiển thị các quyển sách đọc gần nhất
Trang 262.2 Mô hình Use-Case
User
BookStore Lastest
ListView
ReadBook
<<include>>
SeeContents Note
SeeNote
AdjustTextSize
AdjustScreenMode AdjustOriented
Trang 272.3 Mô tả Use-Case
2.3.1 SelectBook
và chọn sách ở dạng kệ sách hoặclistview
Người dùng chọn biểu tượng
“Chọn sách”
Hệ thông hiển thị 2 biểu tượng làxem sách ở dạng kệ sách/ ở dạnglistview
Người dùng chọn biểu tượng “kệsách” để xem sách và chọn sách
Người dùng chọn biểu tượng
“List view” để xem sách và chọnsách để đọc
Name: Listview
Trang 282.3.2 BookShelf
sách từ ở dạng listview
“ListView”
Hệ thống hiển thị một giao diện
có năm thẻ( sách, tên tác giả, chủ
đề, bộ sưu tập, tên tập tin)
Trang 29 Name: Catalog.
Name: FileName
2.3.4 Book
lọc sách theo tiêu đề, tên tác giả, chủ đề,đọc gần nhất
lọc sách theo tiêu đề, tên tác giả,chủ đề, đọc gần nhất, đã hoànthành (mặc định sẽ lọc sách theotiêu đề)
Người dùng chọn một điều kiện
để lọc sách (tiêu đề, tên tác giả,đọc gần nhất, đã hoàn thành)
Hệ thống hiển thị những quyểnsách theo yêu cầu của người dùng
Ở phía phải của mỗi quyển sách
sẽ có một listbox có ba lựachọn( mở sách để đọc, xem chitiết quyển sách, xóa sách)
Alternative Flows o Mở sách: Khi người dùng chọn
vào đây hệ thống sẽ mở quyểnsách mà người dùng yêu cầu
o Xem chi tiết: Khi người dùngchọn vào đây hệ thống sẽ hiển thịchi tiết của sách( tiêu đề sách, têntác giả, năm xuất bản, số trang,đánh giá, chủ đề)
o Xóa sách: Khi người dùng chọn
Trang 30kiếm sách.
“Tìm kiếm” ở phía trên bên phảicủa màn hình
2.3.6 Author
sách theo tên tác giả
tên tác giả cho người dùng lựachọn
Ẩn bên dưới mỗi tên tác giả là cácquyển sách do tác giả này viết
Trang 31 Ở mỗi quyển sách sẽ có ba lựachọn (mở, xem chi tiết, xóa sách).Alternative Flows o Mở sách: Khi người dùng chọn
vào đây hệ thống sẽ mở quyểnsách mà người dùng yêu cầu
o Xem chi tiết: Khi người dùngchọn vào đây hệ thống sẽ hiển thịchi tiết của sách (tiêu đề sách, têntác giả, năm xuất bản, số trang,đánh giá, chủ đề)
o Xóa sách: Khi người dùng chọnvào đây hệ thống sẽ xóa quyểnsách
2.3.7 Subject
vào đây hệ thống sẽ mở quyểnsách mà người dùng yêu cầu
o Xem chi tiết: Khi người dùng
Trang 32chi tiết của sách (tiêu đề sách, têntác giả, năm xuất bản, số trang,đánh giá, chủ đề).
o Xóa sách: Khi người dùng chọnvào đây hệ thống sẽ xóa quyểnsách
2.3.8 FileName
sách theo tên tập tin
tên file cho người dùng chọn
Ẩn bên dưới mỗi tên tập tin là cácquyển sách
Ở mỗi quyển sách sẽ có ba lựachọn (mở, xem chi tiết, xóa sách).Alternative Flows o Mở sách: Khi người dùng chọn
vào đây hệ thống sẽ mở quyểnsách mà người dùng yêu cầu
o Xem chi tiết: Khi người dùngchọn vào đây hệ thống sẽ hiển thịchi tiết của sách (tiêu đề sách, têntác giả, năm xuất bản, số trang,đánh giá, chủ đề)
o Xóa sách: Khi người dùng chọnvào đây hệ thống sẽ xóa quyểnsách
Trang 33Special requirements Không có.
2.3.9 ReadBook
một quyển sách
Hệ thống hiển thị nội dung sáchcho người dùng
Trang 34 Name: RememberPage.
Name: BackgroundMusic
2.3.10 SeeContents
mục lục của quyển sách
bàn phím (hoặc nhấn vào giữamàn hình)
Hệ thống hiển thị một thanhMenu phía trên và một phía dươimàn hình
Người dùng chọn “Chuyển đến”phía dưới màn hình
Hệ thống hiển thị danh sách cáctùy chọn
Người dùng chọn “Xem mục lục”
Hệ thống hiển thị mục lục chongười dùng (khi người dùng đang
ở chương nào thì chương đó sẽđược đánh dấu)
2.3.11 AdjustOriented
Brief Description Use-case này cho phép người dùng chỉnh
sửa hướng đọc của quyển sách
Trang 35Basic Flow Người dùng chọn “Menu” trên
bàn phím( hoặc nhấn vào giữamàn hình
Hệ thống hiển thị một thanh Menuphía trên và một phía dưới mànhình
Người dùng chọn biểu tượng “Càiđặt” phía dưới màn hình
Hệ thống hiển thị các chức năngcho người dùng tùy chỉnh
Người dùng chọn “Hướng đọc” đểchỉnh sửa hướng đọc
Hệ thống hiển thị một danh sáchcho người dùng tùy chỉnh (tựđộng, dọc, ngang)
Người dùng check vào radiobutton
Quá trình chỉnh sửa kết thúc
khi người dùng xoay điện thoạitheo chiều ngang hay chiều dọc
o Dọc: Cố định văn bản theo chiềudọc
o Ngang: Cố định văn bản theochiều ngang
2.3.12 NextPreviousPage
Trang 36Brief Description Use-case này cho phép người dùng
chuyển trang tiếp theo hoặc quay vềtrang trước của quyển sách
màn hình
Cách 2: Lật (3D) từ trái sang phải
hoặc từ phải sang trái
Cách 3: Sử dụng phím trái/phải.
2.3.13 Dictionary
Brief Description Use-case này cho phép người dùng tra từ
2.3.14 AdjustTextSize
Brief Description Use-case này cho phép người dùng chỉnh
sửa kích thước chữ trong trang sách
Trang 37bàn phím( hoặc nhấn vào giữamàn hình).
Hệ thống hiển thị một thanhMenu phía trên và một phía dướimàn hình
Người dùng chọn biểu tượng “Càiđặt” phía dưới màn hình
Hệ thống hiển thị các chức năngcho người dùng tùy chỉnh
Người dùng chọn biểu tượng
2.3.15 SeeLink
liên kết được đặt trong trang sách
Trang 38người dùng yêu cầu.
2.3.16 PlayAudioVideo
audio hoặc xem video được đặt trongtrang sách
audio/video
Hệ thống mở chương trình audio/video
Hệ thống lấy audio/video từđường dẫn chuyển vào chươngtrình
Hệ thống chạy audio/video
dấu trên quyển sách
dấu”
Người dùng đánh dấu từ khóa
Khi người dùng rời khỏi trang
Trang 39sách hoặc chọn chức năng “Lưu”
hệ thống sẽ hiện thông báo để xácnhận việc lưu đánh dấu
Người dùng chọn “Đồng ý”
Hệ thống lưu đánh dấu vào cơ sở
dữ liệu
DeleteHighlight
đánh dấu trên quyển sách
Hệ thống lưu thay đổi
Trang 40Brief Description Use-case này cho phép ngườì dùng thêm
ghi chú của quyển sách
Hệ thông lưu ghi chú vào cơ sở
dữ liệu và hiện thông báo đã thêmthành công
DeleteNote
ghi chú của quyển sách