o Hỗ trợ người dùng đánh giấu những từ muốn học lại vào danh sáchfavorite, để có thể học lại từ bất kỳ lúc nào.- Yêu cầu hệ thống: o Ứng dụng được thiết kế kiến trúc hợp lý, dễ sử dụng..
Trang 1PHIẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
1 Thông tin về sinh viên
Đồ án tốt nghiệp được thực hiện tại: Bộ môn Khoa học máy tính – viện Công nghệ thông tin và truyền thông
Thời gian làm ĐATN: Từ ngày / / đến 30 / 5 / 2014
2 Mục đích nội dung của ĐATN
Tìm hiểu hệ điều hành Android và xây dựng ứng dụng đọc tin tức tiếng Anh cho người Việt
3 Các nhiệm vụ cụ thể của ĐATN
4 Lời cam đoan của sinh viên:
Tôi – Chu Thị Khánh Ly - cam kết ĐATN là công trình nghiên cứu của bản thân tôi dưới
sự hướng dẫn của Ths.Nguyễn Duy Hiệp
Các kết quả nêu trong ĐATN là trung thực, không phải là sao chép toàn văn của bất kỳcông trình nào khác
Hà Nội, ngày 15 tháng 5 năm 2014
Tác giả ĐATN
Chu Thị Khánh Ly
5 Xác nhận của giáo viên hướng dẫn về mức độ hoàn thành của ĐATN và cho phép bảovệ:
Hà Nội, ngày tháng năm
Giáo viên hướng dẫn
Trang 2M C L C ỤC LỤC ỤC LỤC
PHI U GIAO NHI M V Đ ÁN T T NGHI P ẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ỆM VỤ ĐỒ ÁN TỐT NGHIỆP ỤC LỤC Ồ ÁN TỐT NGHIỆP ỐT NGHIỆP ỆM VỤ ĐỒ ÁN TỐT NGHIỆP 1
MỤC LỤC 2
TÓM T T N I DUNG Đ ÁN T T NGHI P ẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP ỘI DUNG ĐỒ ÁN TỐT NGHIỆP Ồ ÁN TỐT NGHIỆP ỐT NGHIỆP ỆM VỤ ĐỒ ÁN TỐT NGHIỆP 4
DANH M C CÁC HÌNH ỤC LỤC 5
L I M Đ U ỜI MỞ ĐẦU Ở ĐẦU ẦU 7
CH ƯƠNG 1 : ĐẶT VẤN ĐỀ NG 1 : Đ T V N Đ ẶT VẤN ĐỀ ẤN ĐỀ Ề 8
CH ƯƠNG 1 : ĐẶT VẤN ĐỀ NG 2 : C S LÝ THUY T ƠNG 1 : ĐẶT VẤN ĐỀ Ở ĐẦU ẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 10
1 Di động đi tắt đón đầu trong thế giới công nghệ 10
2 Hệ điều hành android 11
2.1 Lịch sử hệ điều hành Android 11
2.2 Kiến trúc hệ điều hành Android 14
3 Xu hướng phát triển Android 15
4 Giới thiệu về Android SDK 16
CH ƯƠNG 1 : ĐẶT VẤN ĐỀ NG 3: PHÂN TÍCH CH ƯƠNG 1 : ĐẶT VẤN ĐỀ NG TRÌNH 17
1 Biểu đồ Usecase của chương trình 18
1.1 Đặc tả Use-case Đọc tin Online 18
1.2 Đặc tả Use-case Tra từ điển Offline 19
2 Biểu đồ hoạt động của hệ thống 20
3 Biểu đồ trình tự của hệ thống 21
3.1 Chức năng đọc tin tức Online 21
3.2 Chức năng tra từ điển 23
4 Biểu đồ lớp cho các chức năng của hệ thống 25
4.1 Biểu đồ lớp cho chức năng đọc chi tiết một bản tin 25
4.2 Biểu đồ lớp cho chức năng tra từ điển Anh Việt 26
Trang 34.3 Biểu đồ lớp cho chức năng hiển thị danh sách các từ yêu thích 27
4.4 Biểu đồ lớp cho chức năng hiển thị danh sách tin tức Online theo danh mục 28
CH ƯƠNG 1 : ĐẶT VẤN ĐỀ NG 4: THI T K CH ẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ƯƠNG 1 : ĐẶT VẤN ĐỀ NG TRÌNH 29
1 Thiết kế cơ sở dữ liệu 29
2 Thiết kế các module 30
2.1 Thiết kế module phân tích RSS lấy danh sách các tin 30
2.2 Thiết kế module phân tích HTML và hiển thị nội dung bản tin 35
2.3 Thiết kế module chạm text để tra từ nhanh trong bản tin 36
2.4 Thiết kế module tra từ 39
2.5 Thiết kế module ghi nhớ từ 43
3 Thiết kế giao diện 45
3.1 Giao diện màn hình chính của ứng dụng 45
3.2 Giao diện màn hình xem tin tức Online 46
3.3 Giao diện xem chi tiết một bản tin 47
3.4 Giao diện Tra từ điển Anh – Việt 48
CH ƯƠNG 1 : ĐẶT VẤN ĐỀ NG 5: K T QU Đ T Đ ẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Ả ĐẠT ĐƯỢC ẠT ĐƯỢC ƯỢC 50 C 1 Kết quả 50
2 Cài đặt ứng dụng 50
3 Kiểm thử 51
4 Ưu nhược điểm 51
K T LU N ẾU GIAO NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP ẬN 53
Trang 4TÓM TẮT NỘI DUNG ĐỒ ÁN TỐT NGHIỆP
Nội dung đồ án gồm có 5 chương lớn:
Chương 1 : Đặt vấn đề
Chương 2: Cơ sở lý thuyết
Di động đi tắt đón đầu trong thế giới công nghệ
Hệ điều hành Android
Xu hướng phát triển Android
Giới thiệu về Android SDK
Chương 3: Phân tích chương trình
Biểu đồ Use case của chương trình
Biểu đồ hoạt đông của hệ thống
Biểu đồ trình tự của hệ thống
Biểu đồ lớp cho các chắc năng của hệ thống
Chương 4: Thiết kế chương trình
Thiết kế cơ sở dữ liệu
Thiết kế các module
Thiết kế giao diện
Chương 5: Kết quả đạt được
Trang 5DANH MỤC CÁC HÌNH
Hình 1 Tốc độ phát triển của các loại công nghệ………9
Hình 2.Các phiên bản Android SDK………11
Hình 3 Kiến trúc hệ điều hành Android……… 13
Hình 4 Biểu đồ thị phần smartphone và tablet toàn cầu……… 14
Hình 5 Android SDK………15
Hình 6 Biểu đồ phân cấp chức năng của chương trình………16
Hình 7 Biểu đồ usecase của chương trình………17
Hình 8.Biểu đồ trạng thái các chức năng……… 19
Hình 9.Biểu đồ trình tự chức năng xem danh sách tin theo danh mục……… 20
Hình 10.Biểu đồ trình tự chức năng đọc chi tiết bản tin……… 21
Hình 11.Biểu đồ trình tự chức năng tra từ điển……….22
Hình 12 Biểu đồ trình tự chức năng xem danh sách các từ yêu thích………… 23
Hình 13.Biểu đồ lớp cho chức năng xem chi tiết 1 bản tin……… 24
Hình 14 Biểu đồ lớp cho chức năng tra từ điển Anh Việ……… 25
Hình 15 Biểu đồ lớp cho chức năng hiển thị danh sách các từ yêu thích……….26
Hình 16.Biểu đồ lớp cho chức năng xem danh sách tin tức theo danh mục…… 27
Hình 17 Mô hình phân tích XML bằng SAX Parser……….32
Hình 18 Mô hình thuật toán lấy nội dung bản tin từ HTML……….34
Hình 19 Màn hình giao diện tra từ nhanh……….36
Hình 20 Mô hình thuật toán xử lý sự kiện chạm 1 từ……… 36
Hình 21 Mô hình tổ chức lưu trữ từ điển……… 38
Trang 6Hình 22 Tạo HashMap lưu trữ từ điển……….40
Hình 23 Thuật toán tra cứu từ điển………40
Hình 24 Mô hình thuật toán thêm từ vào danh sách favorite……… 42
Hình 25 Mô hình thuật toán xóa từ khỏi danh sách favorite……….43
Hình 26.Giao diện chính của ứng dụng……… 44
Hình 27 Giao diện danh sách tin tức Online……… 45
Hình 28 Giao diện xem chi tiết một bản tin………46
Hình 29 Dialog hiển thị nghĩa của từ đã tra………47
Hình 30.Giao diện màn hình Từ điển Anh – Việt………48
Hình 31 Kiểm thử module tra từ……… 50
Trang 7LỜI MỞ ĐẦU
Việc thành thạo ngoại ngữ Tiếng Anh là yêu cầu cần thiết đối với mỗi ngườitrong thời kỳ hội nhập hiện nay Tất cả, từ học sinh, sinh viên, nhân viên côngchức, đều cố gắng củng cố vốn Tiếng Anh của mình bằng mọi phương pháp.Trong số đó, việc học tiếng Anh thông qua đọc tin tức, báo chí được cho là có hiệuquả khá tốt Ở Việt Nam, một số trang báo mạng cũng cung cấp thêm cả versiondùng ngôn ngữ tiếng Anh như: Dân trí, Thanh niên, Tuổi trẻ, Việt Nam net…
Với nhu cầu vừa học vừa cập nhật tin tức đó, em đã thực hiện đề tài “Tìm hiểu
Android và xây dựng ứng dụng đọc tin tích hợp từ điển Anh - Việt trên nền tảng Android” Ứng dụng có tên “Học tiếng Anh qua tin tức”.
Lý do em lựa chọn viết ứng dụng trên nền tảng Android là bởi Android là hệ điềuhành ổn định, phát triển và chiếm thị phần cao nhất trong các hệ điều hành di độnghiện nay Với những tiện lợi của di động, ứng dụng trên nền tảng di động Android
sẽ giúp cho người dùng có thể sử dụng mọi lúc mọi nơi và đạt hiệu quả cao nhất cóthể
Với những cố gắng của bản thân và sự hướng dẫn của thầy Nguyễn Duy Hiệp, em
đã hoàn thiện ứng dụng “Học tiếng Anh qua tin tức” gồm các chức năng đọc tin
Online và tra từ điển Anh – Việt offline Mong rằng, ứng dụng sẽ góp phần cũng cốtiếng Anh của người dùng một cách tốt nhất
Tuy nhiên, vì thời gian thực hiện đề tài và khả năng của bản thân có hạn nênchương trình chắc vẫn còn một số thiếu sót Vì vậy, em mong nhận được nhiều góp
ý từ thầy cô để em có thể hoàn thiện chương trình được tốt hơn
Cuối cùng, em xin gửi lời cảm ơn chân thành tới thầy Nguyễn Duy Hiệp đãnhiệt tình giúp đỡ và chỉ bảo em trong suốt quá trình thực hiện đề tài
Trang 8CHƯƠNG 1 : ĐẶT VẤN ĐỀ
Hiện nay, đối với học sinh, sinh viên và công chức thì việc thông thạo tiếng Anh làmột nhiệm vụ gần như là tối thiểu và bắt buộc Do đó, nhu cầu học tiếng Anh trởnên cấp thiết và là xu thế chung của xã hội hiện nay Mỗi người lựa chọn cho mìnhnhững phương pháp học tốt nhất để nâng cao vốn tiếng Anh của mình Và mộttrong nhưng lựa chọn được nhiều người áp dụng đó là học tiếng anh thông qua việcđọc báo
Mặt khác, với sự xuất hiện và phát triển chóng mặt, công nghệ mobile đã tác độngrất lớn vào người dùng Điện thoại trở thành vật bất ly thân đối với họ Vì vậy, việc
áp dụng học tiếng anh trên di động sẽ rất tiện lợi và đạt hiệu quả cao
Vì những lý do trên, em lựa chọn thực hiện đề tài “Tìm hiểu Android và xây dựngứng dụng đọc tin tích hợp tra từ điển trên nền tảng Android” Ứng dụng có tên là
“Học tiếng Anh qua tin tức”, với nguồn tin được lấy từ website
cảm nhận những tin tức gần gũi với mình, và thú vị với những thuật ngữ hằng ngàyđược diễn đạt bằng tiếng Anh Ngoài ra, ứng dụng còn tích hợp thêm từ điển Anh –Việt offline và tính năng ghi nhớ từ giúp cho người dùng cảm thấy tiện dụng hơn.Ứng dụng được viết bằng ngôn ngữ Java trên nền tảng Android 2.3 đến 4.2, sử dụngcông nghệ XML và cơ sở SQLite Công cụ sử dụng để lập trình ứng dụng này là Eclipse tích hợp Android SDK
Hy vọng qua đề tài này, em có thể tiếp cận một xu thế mới của lĩnh vực công nghệthông tin cũng như học tập được nhiều điều mới và phần mềm làm ra có thể ứngdụng vào thực thế Trong quá trình thực hiện, em rất mong nhận được sự góp ý củacác thầy cô để kịp thời sửa chữa những thiếu sót
Yêu cầu cần thực hiện:
- Yêu cầu chức năng:
o Đảm bảo nguồn tin tức phong phú, đầy đủ các thể loại: “Politics”,
“Bussiness”, “Society”, “Sports”, “Health”,…
o Cập nhật và hiển thị danh sách tin từ mới nhất đến cũ
o Tải dữ liệu nhanh, tiết kiệm data mạng
o Tra cứu từ chính xác, số lượng từ lớn đáp ứng nhu cầu tra từ chongười dùng
o Hỗ trợ người dùng tra cứu từ điển nhanh trong khi đọc báo tiện dụng– chỉ cần chạm vào từ bất kỳ muốn tra trong bài báo đó
Trang 9o Hỗ trợ người dùng đánh giấu những từ muốn học lại vào danh sáchfavorite, để có thể học lại từ bất kỳ lúc nào.
- Yêu cầu hệ thống:
o Ứng dụng được thiết kế kiến trúc hợp lý, dễ sử dụng
o Tránh được các lỗi từ người dùng
o Phù hợp với mọi phiên bản SDK
Mục đích cần đạt được:
- Hiểu về hệ điều hành Android cũng như lập trình ứng dụng trên nó.
- Thiết kế và tạo ra ứng dụng đạt được các yêu cầu nêu ở trên.
Trang 10CHƯƠNG 2 : CƠ SỞ LÝ THUYẾT
1 Di động đi tắt đón đầu trong thế giới công nghệ
Công nghệ di động trong những năm gần đây đã có những bước nhảy vọt nhanh chóng cả về sức mạnh phần cứng lẫn tốc độ phổ biến của nó trong dân cư Những chiếc điện thoại thậm chí còn phát triển nhanh hơn cả thời kỳ hoàng kim của cáccông nghệ trong quá khứ như ti vi, máy vi tính Bên cạnh đó, trong vòng 2 nămtrở lại đây thì thị trường máy tính bảng cũng trở nên vô cùng sôi động
Hình 1 Tốc độ phát triển của các loại công nghệ
Biều đồ trên đã cho chúng ta thấy khá rõ “chặng đường phát triển” của các loạihình công nghệ Điện thoại bàn và điện năng đã phải trải qua hơn 100 năm mới đạt
Trang 11tới thời điểm bão hòa trong khi đó những công nghệ không dây như: radio, truyềnhình hay điện thoại di động lại có thể thâm nhập được 75% thị trường chỉ trongvòng 20 năm.
Những thành tựu mà công nghệ di động đã tạo ra là không thể phủ nhận Khi chiếciPhone đầu tiên ra đời, kỷ nguyên của điện thoại thông minh bắt đầu phát triển mạnh mẽ và từng bước chiếm lĩnh thị trường từ 5% cho đến 40% thị phần.Đặc biệt,
ở một số thị trường, sự phát triển điện thoại thông minh còn diễn ra nhanh hơn rấtnhiều, đơn cử như ở Mỹ đã có hơn 2/3 số điện thoại được bán ra hiện nay là cácđiện thoại thông minh Nhiều khả năng thì điện thoại thông minh sẽ chiếm lĩnh tới75% thị trường Mỹ trong vài năm tới, trở thành công nghệ có tốc độ phổ biến nhanhnhất trong lịch sử loài người Trong quý I năm 2012, điện thoại thông minh chiếmđến 36% tổng số điện thoại di động được bán ra, tăng 25% so với cùng kì nămtrước, một tỷ lệ rất cao
Trong khi đó, máy tỉnh bảng cũng có sự phát triển nhanh chóng ở Mỹ từ khi iPadlần đầu ra mắt vào năm 2010 Các chuyên gia vẫn chưa dám khẳng định liệu nhu cầu về thiết bị này có lan rộng ở khắp nơi trên thế giới hay không Ở các nướcphương Tây có thể dễ dàng mua được một chiếc máy tính xách tay, điện thoại thôngminh hay máy tính bảng nhưng ở các nước đang phát triển nó là điều cần phải cânnhắc
Chiếc điện thoại không còn đơn thuần là thiết bị liên lạc mà nó đả trở thành một thiết bị đa chức năng phục vụ rất nhiều nhu cầu công việc và giải trí của con người Hiện tại điện thoại thông minh đang là ngọn sóng công nghệ trên thế giới Và Việt Nam cũng sẽ đón ngọn sóng đó chỉ tron một tương lai ngắn “Làn sóng moblie” sẽ thay đổi cách con người làm việc, giải trí và mang lại những thách thức mới
vị trí và sở thích của người dùng"
Google mua lại Tổng công ty Android vào ngày 17 tháng 8 năm 2005, biến nóthành một bộ phận trực thuộc Google
Trang 12Ngày 5 tháng 11 năm 2007, Liên minh thiết bị cầm tay mở (Open HandsetAlliance), một hiệp hội bao gồm nhiều công ty trong đó có Texas Instruments, Tậpđoàn Broadcom, Google, HTC, Intel,LG, Tập đoàn Marvell, Technology,Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel và T-Mobile được thành lập với mục đích phát triển các tiêu chuẩn mở cho thiết bị diđộng Cùng ngày, Android cũng được ra mắt với vai trò là sản phẩm đầu tiên củaLiên minh, một nền tảng thiết bị di động được xây dựng trên nhân Linux phiên bản2.6.
Ngày 22 tháng 10 2008, chiếc điện thoại chạy hệ điều hành Android đầu tiên đượcbán ra là HTC Dream Biểu trưng của hệ điều hành Android mới là một con rôbốtmàu xanh lá cây do hãng thiết kế Irina Blok tại California vẽ
Từ năm 2008, Android đã trải qua nhiều lần cập nhật để dần dần cải tiến hệ điềuhành, bổ sung các tính năng mới và sửa các lỗi trong những lần phát hành trước.Mỗi bản nâng cấp được đặt tên lần lượt theo thứ tự bảng chữ cái, theo tên của mộtmón ăn tráng miệng; ví dụ như phiên bản 1.5 Cupcake (bánh bông lan nhỏ có kem)tiếp nối bằng phiên bản 1.6 Donut (bánh vòng) Phiên bản mới nhất là 4.4 Kitkat
Hình 2.Các phiên bản Android SDK
Vào năm 2010, Google ra mắt loạt thiết bị Nexus—một dòng sản phẩm bao gồmđiện thoại thông minh và máy tính bảng chạy hệ điều hành Android, do các đối tácphần cứng sản xuất HTC đã hợp tác với Google trong chiếc điện thoại thông minhNexus đầu tiên, Nexus One Kể từ đó nhiều thiết bị mới hơn đã gia nhập vào dòngsản phẩm này, như điện thoại Nexus 4 và máy tính bảng Nexus 10, lần lượt
do LG và Samsung sản xuất Google xem điện thoại và máy tính bảng Nexus là
Trang 13những thiết bị Android chủ lực của mình, với những tính năng phần cứng và phầnmềm mới nhất của Android.
Trang 142.2 Kiến trúc hệ điều hành Android
Hình 3 Kiến trúc hệ điều hành Android
- Kernel Linux: Hoạt động như một lớp trừu tượng hóa giữa phần cứng và
tầng dưới của phần mềm Lớp này chứa tất cả các thiết bị mức thấp điềukhiển các thành phần phần cúng khác nhau của một thiết bị Android
- Libraries bao gồm một tập hợp các thư viện lập trình chứa mã lệnh cung
cấp những tính năng và thao tác chính trên hệ điều hành
- Android Runtime: cung cấp một bộ lõi thư viện cho phép các nhà phát triển
viết các ứng dụng android bằng cách sử dụng ngôn ngữ lập trình java ndroidruntime cũng bao gồm các máy ảo Dalvik, cho phép mọi ứng dụng androidchạy trong tiến trình riêng của mình Dalvik là một máy ảo chuyên dụngđược thiết kế đặc biệt cho android và tối ưu hóa cho các thiết bị điện thoại diđộng với giới hạn bộ nhớ và CPU
- Application Framework: Bằng cách cung cấp một nền tảng phát triển mở,
Android cung cấp cho các nhà phát triển khả năng xây dựng các ứng dụngcực kỳ phong phú và sáng tạo
Nhà phát triển được tự do tận dụng các thiết bị phần cứng, thông tin địađiểm truy cập, các dịch vụ chạy nền, thiết lập hệ thống báo động, thêm cácthông báo để các thanh trạng thái, và nhiều, nhiều hơn nữa Nhà phát triển có thểtruy cập vào các API được sử dụng bởi các ứng dụng lõi Các kiến trúc ứngdụng được thiết kế để đơn giản hóa việc sử dụng lại các API Đưa ra những khả
Trang 15năng khác nhau của hệ điều hành Android vào ứng dụng để sử dụng chúng trongcác ứng dụng của mình
Cơ bản tất cả các ứng dụng là một bộ các dịch vụ và các hệ thống, bao gồm:các View (là dùng để hiển thị thông tin và để người dùng thao tác), ContentProvider để chia sẻ dữ liệu giữa các ứng dụng, Resource Manager truy xuất tàinguyên, Notification Manager hiển thị các thông báo, Activity Manager quản lýchu trình sống của ứng dụng và điều hướng Activity
- Application: Tại lớp trên cùng sẽ là các ứng dụng cho android (như điện
thoại, danh bạ, trình duyệt,…) cũng như các ứng dụng được tải về và cài đặt
từ AndroidMarket hay bất kỳ ứng dụng nào bạn viết được tại tầng này
3 Xu hướng phát triển Android
Với thế mạnh và ưu điểm của mình thì hiện nay, Andoid đang vững ngôi thị phần diđộng cũng như thị trường tablet thế giới Theo số liệu thống kê do công ty nghiêncứu IDC công bố, số máy Android được giao trong quý 4/2013 là 226, 1 triệu chiếc,tăng mạnh – 40,3 % so với cùng kì năm 2012 và hiện đang chiếm thị phần lớn nhất78,1%
Tính đến đầu tháng 3/2104, chiếm 51,7 % thị phần hệ điều hành trênsmartphone (Theo thống kê của Comscore)
Doanh số máy tính bảng cài hệ điều hành này đạt 38 triệu chiếc, chiếm65,8% tổng doanh thu máy tính bảng toàn cầu, tăng gần 13% so với cùng kỳnăm trước (Theo thống kê của Strategy Analytics)
Dưới đây là biểu đồ thị phần smartphone và tablet toàn cầu :
Hình 4 Biểu đồ thị phần smartphone và tablet toàn cầu
Trang 16Android không chỉ dừng lại ở việc hỗ trợ smartphone, tablet mà cho đến bây giờ,các loại thiết bị mà nó "kết đôi" đã tăng lên rất nhiều : từ máy chơi game, routerphát wifi, tủ lạnh…hay gần đây nhất là TV và đồng hồ đeo tay.
Có thể trong tương lai, Android sẽ trở thành :
"Vị trí mới trong phòng khách" – được tích hợp vào các dòng TV thôngminh
Xuất hiện cùng Windows trên máy tính các nhân
Chiếm lĩnh nghành công nghệ game
4 Giới thiệu về Android SDK
Hình 5 Android SDKAndroid SDK (viết tắt của Sofware Development Kit) là một phần mềm mã nguồn
mở một bộ công cụ phát triển bao gồm một trình gỡ lỗi, các thư viện, trình môphỏng thiết bị (dựa trên QEMU), mã nguồn thí dụ, và hướng dẫn
Android SDK cung cấp thư viện API và những công cụ cần thiết cho lập trình viên
lập trình, kiểm thử và chữa lỗi các ứng dụng của Android
Bộ công cụ Android SDK biên dịch mã lệnh cùng với bất kì dữ liệu cũng như tàinguyên (hình ảnh, âm thanh) đi kèm với ứng dụng tạo thành gói có phần mởrộng apk (Viết tắt của từ Android package) Tất cả phần mã thực thi đi kèm với tàinguyên resources) được nén trong một tệp đơn có đuôi apk được xem như là mộtứng dụng chạy trên các thiết bị chạy Android File nén này có thể dùng để cài đặt vàthực thi
Trang 17CHƯƠNG 3: PHÂN TÍCH CHƯƠNG TRÌNH
Ứng dụng gồm có 2 chức năng chính, đó là :
Đọc tin tức Online : chức năng này giúp người dùng cập nhật và xem tin tứcOnline dưới dạng danh sách các tin tóm tắt Tất cả bao gồm 8 danh sách ứngvới các danh mục :
Entertainment / Arts Travel
Khi lựa chọn xem chi tiết 1 bản tin, người dùng có thể sử dụng tính năng tra từ điểnAnh – Việt nhanh bằng cách click vào từ muốn tra cứu, và đánh dấu từ vào danhsách ghi nhớ để có thể học lại
Từ điển Anh – Việt offline: tại đây, người dùng sẽ có thể tra cứu từ điểnhoặc xem lại các danh sách từ đã đánh dấu Có 2 tab để người dùng lựa chọn
Hình 6 Biểu đồ phân cấp chức năng của chương trình
Trang 181 Biểu đồ Usecase của chương trình
uc
hệ thống
Người dùng
đọc tin Online
Tra từ điển offline
tra từ trực tiếp thêm từ mới v ào
danh sách favorite
xem danh sách fav orite
xem danh sách tin tức theo chuyên đề
đọc chi tiết bài báo tra từ điển
Hình 7 Biểu đồ usecase của chương trình
- Mục đích: Xem danh sách tin tức theo các danh danh mục và đọc chi tiết
một bài báo Trong giao diện đọc chi tiết bài chọn một từ cần tra(chạm lâuvào từ muốn tra) để hiển thị nghĩa tiếng Việt của từ đó
- Tác nhân: Người dùng
- Luồng sự kiện chính:
o Từ giao diện chính, chọn chức năng xem tin tức Online
o Chương trình sẽ hiện lên các fragment, mỗi fragment là một danh mụcchứa danh sách các tên của các bản tin
o Người dùng lựa chọn các danh mục tin tức để xem danh sách các tincập nhật mới nhất
Trang 19o Chọn tin muốn xem chi tiết tin đó
o Lựa chọn từ muốn tra bằng cách chạm lâu vào từ đó, hoặc nhập trựctiêp vào EditText để tra nghĩa của từ đó
- Mục đích: Tra từ điển Anh – Việt offline, thêm từ muốn ghi nhớ vào danh
sách Favorite và xem lại danh sách các từ ghi nhớ
- Tác nhân: người dùng
- Luồng sự kiện chính:
o Chọn chức năng tra từ điển offline
o Nhập từ muốn tra vào EditText để thực hiện tra từ
o Chương trình sẽ thực hiện tìm kiếm và hiển thị nghĩa của từ đó, nếu từ
đó tồn tại trong từ điển, sẽ hiện ra một Button để người dùng chọn nếumuốn ghi nhớ từ này
o Chọn thêm từ vào danh sách Favorite
o Xem lại danh sách Favorite
Trang 202 Biểu đồ hoạt động của hệ thống
act BD trang thai
Initial
Đọc tin Online
Tra từ điển Offline
Xem danh sách tin tức theo
danh mục
Đọc chi tiết 1 bản tin
Tra từ
Xem danh sách các từ yêu thích
thêm từ tra hiện tại vào danh sách các từ yêu thích
ghi nhớ từ tra hiện tại
Thoát final
Trang 213 Biểu đồ trình tự của hệ thống
- Chức năng xem danh sách tin tức theo danh mục
sd SD-getNewsL
yêu cầu xem danh sách tin tức()
gửi yêu cầu ()
gửi yêu cầu lấy bản tin Rss()
trả về bản tin Rss()
Parser Rss()
trả về danh sách tin()
hiển thị danh sách tin()
Hình 9.Biểu đồ trình tự chức năng xem danh sách tin theo danh mục
Trang 22- Chức năng xem chi tiết một bản tin
sd Sequence-Actircle
gửi yêu cầu xem chi tiết bản tin()
gửi yêu cầu()
gửi yêu cầu lấy mã nguồn trang của tin()
Trang 233.2 Chức năng tra từ điển
- Chức năng tra từ
sd Sequence-Translate
User Giao diện Controller Database
yêu cầu tra từ điển()
yêu cầu nhập từ cần tra()
trả về kết quả truy vấn()
trả về output()
hiển thị kết quả() yêu cầu thêm vào danh sách favorite()
gửi yêu cầu()
truy vấn cơ sở dữ liệu()
trả về truy vấn thành công()
thông báo thành công()
thông báo thêm thành công()
Hình 11.Biểu đồ trình tự chức năng tra từ điển
Trang 24- Chức năng xem danh sách các từ yêu thích
sd Sequence-GetWordsFavorite
yêu cầu xem danh sách các từ yêu thích()
gửi yêu cầu()
truy vấn cơ sở dữ liệu()
Trả về kết quả truy vấn()
trả về danh sách favorite()
hiển thị danh sách() remove 1 từ khỏi danh sách favorite()
gửi thông tin từ cần remove()
truy vấn cơ sở dữ liệu() trả về truy vấn thành công() trả về kết quả thành công()
hiển thị thông báo remove thành công()
Hình 12 Biểu đồ trình tự chức năng xem danh sách các từ yêu thích
Trang 254 Biểu đồ lớp cho các chức năng của hệ thống
class Class Mo
- sourceHtml: String
- strContent: String
- textView: SelectableTextView
- translateTask: TranslateTask + copyToInput() : void + onCreateView() : void + onDestroy() : void
1 1
Hình 13.Biểu đồ lớp cho chức năng xem chi tiết 1 bản tin
Trang 264.2 Biểu đồ lớp cho chức năng tra từ điển Anh Việt
+ onCreateView() : void + onStart() : void
Activity
Hình 14 Biểu đồ lớp cho chức năng tra từ điển Anh Việt