1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khoá luận tốt nghiệp xây dựng chương trình ứng dụng từ điển anh việt trên hệ điều hành android

60 595 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 60
Dung lượng 885,62 KB

Nội dung

Cùng với sự phát triển mạnh mẽ của hệ điều hành Android và nhu cầu học tiếng Anh mọi lúc mọi nơi của người sử dụng, đã có rất nhiều từ điển Anh - Việt được xây dựng trên hệ điều hành And

Trang 1

T R Ư Ờ N G Đ Ạ I HỌC s ư PH ẠM HÀ N Ộ I 2• • • •

K H O A CÔ NG N G H Ệ TH Ô N G TIN

NGÔ HƯƠNG LY

XÂY DựNG CHƯƠNG TRÌNH ỨNG DỤNG TỪ ĐIỂN ANH - VIỆT TRÊN HỆ ĐIÈU HÀNH ANDROID

KHÓA LUÂN TỐT NGHIÊP ĐAI HOC• • • •

C huyên ngành: Sư phạm Tin học

Trang 2

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC• • • •

C huyên ngành: Sư phạm Tin học

Người hướng dẫn khoa học PGS.TS TRỊNH ĐÌNH THẲNG

HÀ NỘI - 2016

Trang 3

LỜI CẢM ƠNLời đầu tiên, em xin chân thành cảm ơn PGS.TS Trinh Đình Thắng, trường Đại học Sư phạm Hà Nội 2 đã trực tiếp hướng dẫn và chỉ bảo tận tình cho em hoàn thành khoá luận này.

Em cũng xin gửi lời cảm ơn đến các thầy, cô giáo trong khoa Công nghệ Thông tin, trường Đại học Sư phạm Hà Nội 2, những người đã giúp đỡ, tạo điều kiện cho em trong suốt quá trình học tập và nghiên cứu

Cuối cùng em xin bày tỏ lòng biết ơn tới gia đình và bạn bè đã giúp đỡ, động viên em rất nhiều trong suốt quá trình học tập để em có thể thực hiện tốt khoá luận này

Tuy đã có những cố gắng nhất định nhưng do thời gian và trình độ có hạn nên chắc chắn khoá luận này còn nhiều thiếu sót và hạn chế Kính mong nhận được sự góp ý của thầy, cô giáo và các bạn

Hà Nội, tháng 05 năm 2016

Sinh viên

Ngô Hương Ly

Trang 4

LỜI CAM ĐOAN

Tên em là: NGÔ HƯƠNG LY

Sinh viên lớp: K38 - Sư phạm Tin học, khoa Công nghệ Thông tin, trường Đại học sư phạm Hà Nội 2

Em xin cam đoan:

1 Đề tài “Xây dựng chương trình ứng dụng từ điển Anh - Việt trên hệ điều hành Android” là sự nghiên cứu của riêng em, dưới

sự hướng dẫn của thầy giáo PGS.TS Trịnh Đình Thắng

2 Khoá luận hoàn toàn không sao chép của tác giả nào khác

Nếu sai em xin hoàn toàn chịu trách nhiệm

Hà Nội, tháng 5 năm 2016

Người cam đoan

Ngô Hương Ly

Trang 5

MỤC LỤC

MỞ ĐẦU 1

CHƯƠNG 1: C ơ SỞ LÝ THUYẾT 4

1.1 Lịch sử Android 4

1.2 Kiến trúc Android 5

1.3 Các thành phần cơ bản và cấu trúc của một ứng dụng Android 6

1.3.1 Các thành phần cơ bản của một ứng dụng Android 6

1.3.2 Cấu trúc của một ứng dụng Android 13

1.4 Các công nghệ lưu trữ dữ liệu của Android 14

1.4.1 Shared Preferences 14

1.4.2 Internal Storage 15

1.4.3 External Storage 15

1.4.4 Content Provider 15

1.4.5 Cơ sở dữ liệu SQLite 15

1.5 Text to speech 16

CHƯƠNG 2: PHẨN TÍCH HỆ THỐNG 18

2.1 Khảo sát hệ thống 18

2.1.1 Khảo sát hệ thống 18

2.1.2 Xác định yêu cầu hệ thống 21

b Yêu cầu phi chức năng 22

2.2 Phân tích hệ thống 22

2.2.1 Biểu đồ use case 22

2.2.2 Biểu đồ lớ p 25

2.2.3 Biểu đồ ữạng thái 26

Trang 6

CHƯƠNG 3: THIẾT KẾ HỆ THỐNG 27

3.1 Biểu đồ tương tá c 27

3.1.1 Biểu đồ tương tác cho chức năng tra t ừ 27

3.1.2 Biểu đồ tương tác cho chức năng xóa ừong danh sách từ đã tra 28

3.3.3 Biểu đồ tương tác cho chức năng xem danh sách nhắc từ 29

3.2 Biểu đồ lớp chi tiết 29

3.3 Biểu đồ hoạt động 31

3.3.1 Biểu đồ hoạt động miêu tả usecase Translate 31

3.3.2 Biểu đồ hoạt động miêu tả usecase SeeAListOfTheTranslatedWords 31

3.4 Biểu đồ thành phần 32

CHƯƠNG 4: XÂY DựNG ỨNG DỤNG 33

4.1 Phát biểu bài toán 33

4.2 Cài đặt và thử nghiệm 33

4.2.1 Kỹ thuật xử lý nguồn dữ liệu của từ điển 33

4.2.2 Kỹ thuật xử lý tra từ 33

4.2.3 Kỹ thuật xử lý xem danh sách từ đã tr a 36

4.2.4 Kỹ thuật xử lý nhắc từ 39

4.2.5 Kỹ thuật xử lý danh sách nhắc từ 43

4.2.6 Kỹ thuật xử lý phát âm 44

4.2.7 Kỹ thuật xử lý tra từ từ tin nhắn 45

4.2.8 Kỹ thuật xử lý thêm t ừ 46

4.3 Một số giao diện của ứng dụng 47

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 49

Trang 7

TÀI LIỆU THAM KHẢO

Trang 8

DANH MỤC BẢNG BIỂUBảng 2.1 Danh sách các usecase 23Bảng 3.1 Danh sách các thuộc tính lớp Word 30Bảng 3.2 Danh sách các phương thức lóp Word 30

Trang 9

DANH MỤC HÌNH VẼ

Hình 1.1 Kiến trúc Android 5

Hình 1.2 Vòng đời hoạt động của Activity 7

Hình 1.3 Vòng đời hoạt động của một service 9

Hình 2.1 Ảnh minh hoạ cho từ điển Anh - Việt Vlook 1.6 18

Hình 2.2 Ảnh minh hoạ cho từ điển Lạc Việt (Anh - Việt) 2.5 19

Hình 2.3 Ảnh minh hoạ cho Dictionary English Vietnamese 2.2.2 20

Hình 2.4 Ảnh minh hoạ cho từ điển TFlat 5.3.4 20

Hình 2.5 Biểu đồ usecase tổng quát 22

Hình 2.6 Biểu đồ usecase cho chức năng tra từ 23

HÌnh 2.7 Biểu đồ usecase cho chức năng xem danh sách từ đã tra 24

Hình 2.8 Biểu đồ usecase cho chức năng nhắc từ 24

Hình 2.9 Biểu đồ lớp 25

Hình 2.10 Biểu đồ trạng thái lớp Word chức năng tra từ 26

Hình 2.11 Biểu đồ trạng thái lớp Word chức năng thêm từ 26

Hình 3.1 Biểu đồ tương tác cho chức năng tra từ 27

Hình 3.2 Biểu đồ tương tác cho chức năng xoá trong danh sách từ đã tra 28

Hình 3.3 Biểu đồ tương tác cho chức năng nhắc từ 29

Hình 3.4 Biểu đồ lớp chi tiết 29

Hình 3.5 Biểu đồ hoạt động miêu tả usecase Traslate 31

Hình 3.6 Biểu đồ hoạt động miêu tả usecase SeeWordHistory 31

Hình 3.7 Biểu đồ thành phần 32

Hình 4.1 Giao diện chính của ứng dụng 47

Hình 4.2 Giao diện tra từ 48

Hình 4.3 Giao diện danh sách những từ đã tra 48

Trang 11

MỞ ĐẦU

1 Lý do chọn đề tài

Trong thời đại công nghệ thông tin phát triển như hiện nay, điện thoại

di động là một thiết bị không thể thiếu trong đời sống con người và ngày càng

có sự phát triển mạnh mẽ Các dòng điện thoại thông minh được tích họp nhiều chức năng, cấu hình mạnh và kích thước ngày càng nhỏ gọn đang dần chiếm lĩnh thị trường Đáp ứng xu thế phát triển đó, việc xây dựng các ứng dụng cho điện thoại di động đang là một ngành công nghiệp mới đầy tiềm năng và hứa hẹn nhiều phát triển vượt bậc

Có rất nhiều nền tảng di động phổ biến như IOS, WindowPhone, Android, Symbia nhưng Android của Google đang là hệ điều hành phổ biến nhất thế giới Do Android có mã nguồn mở nên cho phép các nhà phát triển thiết bị, mạng di động và các lập trình viên nhiệt huyết được điều chỉnh và phân phối Android một cách tự do Những ưu điểm dễ thấy của Android chính là khả năng tùy biến nhanh chóng, dễ làm quen, ứng dụng hỗ ữợ phong phú tương thích với đa cấu hình phần cứng của các nhà sản xuất Bên cạnh đó nhu càu sử dụng các ứng dụng trên hệ điều hành Android trên khắp thế giới là rất cao

Cùng với sự phát triển mạnh mẽ của hệ điều hành Android và nhu cầu học tiếng Anh mọi lúc mọi nơi của người sử dụng, đã có rất nhiều từ điển Anh - Việt được xây dựng trên hệ điều hành Android Bên cạnh những ưu điểm thì một số ứng dụng vẫn còn những mặt hạn chế như chỉ dừng lại ở mức dịch từ, ưa từ, phát âm từng từ mà chưa đáp ứng được những đòi hỏi cao hơn của người sử dụng Ngoài việc tra từ bằng cách nhập từ thông thường, nhiều người sử dụng muốn tra từ bằng tin nhắn, ngoài ra còn muốn xem danh sách các từ đã ừa, cập nhật thêm từ mói, nhắc từ khi muốn học từ mới

Xuất phát từ ý tưởng xây dựng một ứng dụng từ điển Anh - Việt phát huy những ưu điểm của những từ điển trước và hoàn thiện, phát triển thêm các chức năng mà người dùng mong muốn, em đã chọn đề tài “Xây dựng

Trang 12

chương trình ứng dụng từ điển Anh - Việt ữên hệ điều hành Android” làm khóa luận tốt nghiệp.

2 Mục đích nghiên cứu

Mục đích của khóa luận là nghiên cứu hệ điều hành Android và xây dựng ứng dụng từ điển Anh - Việt trên hệ điều hành Android

3 Nhiệm vụ nghiên cứu

Trên cơ sở lý thuyết đã nghiên cứu, nhiệm vụ của khóa luận là phân tích, thiết kế và xây dựng ứng dụng từ điển Anh - Việt

4 Đổi tượng và phạm vỉ nghiên cứu

- Đối tượng nghiên cứu: Hệ điều hành Android và ứng dụng từ điển Anh - Việt

- Phạm vi nghiên cứu: ứ ng dụng từ điển Anh - Việt trên hệ điều hành Android

5 Ý nghĩa khoa học và thực tiễn của đề tài

- Ý nghĩa khoa học: Hệ điều hành Android ra đòi, phát triển và có cơ sở khoa học vững chắc giúp cho việc xây dựng ứng dụng trên điện thoại thông minh trở nên dễ dàng Hiện nay, việc xây dựng ứng dụng từ điển Anh - Việt trên hệ điều hành Android bao gồm nhiều chức năng đang được các lập trình viên và các nhà phát triển ứng dụng quan tâm và phát triển

- Ý nghĩa thực tiễn: ứ ng dụng từ điển Anh - Việt được xây dựng thành công sẽ giúp cho người sử dụng tra nghĩa của từ tiếng Anh trong quá trình học tiếng Anh hoặc dịch thuật

6 Phương pháp nghiên cứu

a Phương pháp nghiên cứu lý luận

Nghiên cứu qua việc đọc sách báo và các tài liệu liên quan nhằm xây dựng cơ sở lý thuyết của đề tài và các biện pháp cần thiết để giải quyết các vấn đề của đề tài

Trang 13

b Phương pháp chuyên gia

Tham khảo ý kiến của các chuyên gia để có thể thiết kế chương trình phù hợp với yêu cầu thực tiễn Nội dung xử lý nhanh đáp ứng được yêu cầu ngày càng cao của người sử dụng

c Phương pháp thực nghiệm

Thông qua quan sát thực tế, yêu cầu của cơ sở, những lý luận được nghiên cứu và kết quả đạt được qua những phương pháp trên

7 Cấu trúc khóa luận

Ngoài phần mở đầu, kết luận và hướng phát triển, tài liệu tham khảo khóa luận gồm các chương nội dung, cụ thể như sau:

Chương 1: Cơ sở lý thuyết

Chương 2: Phân tích hệ thống

Chương 3: Thiết kế hệ thống

Chương 4: Xây dựng ứng dụng

Trang 14

CHƯƠNG 1: C ơ SỞ LÝ THUYẾT 1.1 Lịch sử Android

Android là một hệ điều hành trên điện thoại di động, được phát triển trên cơ sở của hệ điều hành Linux Ban đầu nó được phát triển bởi một công

ty có cùng tên là Android, Inc Vào năm 2005, như một chiến lược của việc gia nhập vào thị trường điện thoại di động, Google đã mua lại Android và tiếp quản công việc phát triển đó

Google muốn Android trở nên mở và miễn phí Vì lí do đó, hầu hết code của Android đều được phát hành dưới dạng open source Apache License, điều đó có nghĩa là bất kì người nào muốn sử dụng Android chỉ việc tải về bộ cài đặt Android Hơn nữa, các nhà cung cấp (thường là các nhà sản xuất phần cứng) có thể thêm những phần mở rộng độc quyền vào Android và tùy chỉnh Android để tạo nên sự khác biệt so với các sản phẩm khác Mô hình phát triển đơn giản làm cho Android rất hấp dẫn và thu hút sự quan tâm của rất nhiều nhà cung cấp Điều này đặc biệt đúng với các công ty bị ảnh hưởng bởi hiện tương Iphone của Apple, một sản phẩm cự kỳ thành công đã tạo nên cuộc cách mạng của nền công nghiệp di động Trong các công ty ấy bao gồm cả Motorola và SonyEricson, các công ty này trong nhiều năm đã phát hệ điều hành trên điện thoại di động của họ Và họ nhận thấy Android như là một giải pháp: họ sẽ tiếp tục design phần cứng và sử dụng Android sử dụng Android làm hệ điều hành Trong thế giới smartphone, phần mềm là phần quan trọng nhất quyết định thành công, các nhà sản xuất thiết bị nhận thấy Android là hi vọng lớn nhất để thách thức lại sự tấn công của Iphone

Android bắt đàu vói bản beta đàu tiên vào tháng 11 năm 2007 và bản thương mại đầu tiên Android 1.0 được phát hành vào tháng 9 năm 2008 Kể

từ tháng 4 năm 2009, phiên bản Android được phát triển đặt theo chủ đề bánh kẹo và phát hành theo bảng chữ cái: Cupcake (1.5), Donut (1.6), Eclair (2.0-

2.1), Froyo (2.2-2.23), Gingerbread (2.3-2.3.7), Honeycomb (3.0-3.2.6), Ice

Cream Sandwich (4.0-4.0.4), Jelly Bean (4.1-4.3), KitKat (4.4), Lollipop

Trang 15

(5.0-5.1.1) Vào 3 tháng 9 2013, Google công bố rằng 1 tỉ thiết bị đã được kích hoạt hiện sử dụng hệ điều hành Android trên toàn cầu.

A ctivity Manager W indow Manager C ontent Providers VÌỄW System

Package Manager T elephony Manager Resource M anager Location M anager Notification Manager

LIBRARIES

Surface Manager M édia Framework SQLite

OpenGL / ES FreeTyfiÈ W ebKit

ANDROID RUNTIME

Cars Libraries Dalvlk Virtual MachlHỄ

Trang 16

• Android runtime

Tại cùng lớp với Libraries, Android runtime cung cap một tập các core library mà cho phép các lập trình viên viết ứng dụng Android sử dụng ngôn ngữ lập trình Java Android runtime cũng bao gồm các máy ảo Dalvik cho phép mọi ứng dụng Android chạy trên tiến trình riêng của nó Dalvik là một máy ảo được thiết kế đặc biệt cho Android và tối ưu hóa cho các thiết bị chạy bằng pin với bộ nhớ và CPU hạn chế

mà bạn phải tải từ Android market

1.3 Các thành phần cơ bản và cấu trúc của một ứng dụng Android

1.3.1 Các thành phần cơ bản của một ứng dụng Android

Một ứng dụng Android có các thành phần cơ bản sau:

a Activity

Mỗi activity là một cửa sổ hiển thị giao diện người dùng Thông thường, một ứng dụng có thể gồm chỉ một activity hay nhiều activity và mục đích chính của activity là tương tác với người dùng Từ thời điểm một activity xuất hiện ừên màn hình cho đến khi nó được ẩn đi, nó đã đi qua một số giai đoạn gọi là vòng đời hoạt động của một acticity Hiểu rõ vòng đời hoạt động của acticity là rất quan trọng để đảm bảo rằng ứng dụng của bạn hoạt động một cách chính xác

Lớp cơ sở Activity định nghĩa một loạt các sự kiện ảnh hưởng đến vòng đời hoạt động của Activity Lớp Activity định nghĩa các sự kiện sau đây:

- onCreate(): Được gọi khi activity được tạo ra lần đầu tiên

- onStart(): Được gọi khi activity được hiển thị với ngưòi dùng

- onResume(): Được gọi khi activity bắt đầu tương tác với người dùng

Trang 17

- onPause(): Được gọi khi acticity hiện thời được tạm dừng và activity trước đó được resumed.

- onStop(): Được gọi khi activity không còn hiển thị với người dùng

- onDestroy(): Được gọi trước khi activity bị phá hủy bởi hệ thống (có thể do ngưòi dùng hoặc hệ thống để tiết kiệm bộ nhớ)

- onRestart(): Được gọi khi activity đã được dừng lại và đang khỏi động lại

Vòng đời hoạt động của Activity

irsto trs© foreground

+

— -onFauseo —

I Tits- acùviOy IS

Hình 1.2 Vòng đời hoạt động của Activity

- Toàn bộ thòi gian sống của một activity xảy ra giữa lời gọi hàm onCreateO và onDestroyO Activity của bạn nên thực hiện thiết đặt toàn cục “global setup” như định nghĩa layout trong hàm onCreate(), và trả lại toàn bộ tài nguyên ưong phương thức onDesữoyO Ví dụ, nếu một activity có một tuyến đang chạy ngầm để download dữ liệu, nó có thể tạo ra tuyến đó trong phương thức onCreateO và dừng tuyến trong phương thức onDestroyO

- Thời gian sống thật (visible lifetime) của một activity xảy ra giữa lòi gọi phương thức onStartO và onStopO Trong suốt thời gian này, người dùng

có thể nhìn thấy activity trên màn hình và tương tác với chúng Ví dụ, onStopO

Trang 18

được gọi khi một activity mới bắt đầu Giữa hai phương thức này, bạn có thể quản lý các nguồn tài nguyên cần thiết để hiển thị activity tới người dùng.

- Thời gian chờ foreground lifetime của một activity xảy ra giữa hai lời gọi onResumeO và onPause() Một activity có thể thường xuyên chuyển trạng thái thành trạng thái chờ và hoạt động- ví dụ, onPause() được gọi khi thiết bị phần cứng ở trạng thái ngủ hoặc một hộp thoại xuất hiện Bởi vì trạng thái này có thể xảy ra thường xuyên nên mã lệnh trong hai phương thức này nên được viết cẩn thận để tăng tốc độ chuyển giữa các chế độ

b Service

Service là một thành phần của một ứng dụng Android được chạy bên trong nền để xử lý các công việc trong thời gian dài và không cung cấp giao diện ngưòi dùng Ví dụ như ứng dụng download có thể tải dữ liệu ưên mạng

về máy mà không ngăn chặn người dùng tương tác với các ứng dụng khác Một service gồm hai trạng thái cơ bản:

- Started: Một service được gọi là started khi một thành phần của ứng dụng, chẳng hạn như là activity, start nó bằng cách gọi phương thức startService() Mỗi lần được started, service chạy bên dưới vô thòi hạn, thậm chí ngay cả khi thành phần started nó bị huỷ

- Bound: Một service được gọi là bound khi một thành phần ứng dụng liên kết với nó bằng cách gọi phương thức bindService() Một dịch yụ ràng buộc cung cấp một giao diện client - server cho phép các thành phần tương tác với server, gửi yêu cầu, nhận kết quả, thậm chí tương tự trong việc giao tiếp với interprocess

Trang 19

Hình 1.3 Vòng đời của một service

c Content Provider

Content providers quản lý truy cập tới dữ liệu Chúng đóng gói dữ liệu,

và cung cấp cơ chế cho phép định nghĩa bảo mật dữ liệu Content providers là giao diện chuẩn kết nối dữ liệu trong một tiến trình cùng với mã nguồn chạy trong các tiến trình khác.

Khi bạn muốn kết nối tới dữ liệu trong content provider, bạn sử đối tượng ContentResolver trong ứng dụng Context để giao tiếp vối provider như một máy khách Đối tượng ContentResolver giao tiếp với đối tượng, một thể hiện của lớp triển khai từ giao diện ContentProvider Đối tượng provider nhận dữ liệu yêu cầu từ clients, xử lý yêu cầu và trả lại kết quả.

Bạn không cần phát triển provider của riêng bạn nếu không muốn chia

sẻ dữ liệu với các ứng dụng khác Tuy nhiên, bạn cần provider của minh để cung cấp những gợỉ ý cho tìm kiếm trong ứng dụng của bạn Bạn luôn cần

Trang 20

provider vì nếu bạn muốn sao chép và dán dữ liệu phức tạp hoặc các tệp từ ứng dụng của bạn sang ứng dụng khác.

Android tự nó đã bao gồm content providers để quản lý dữ liệu như audio, video, images, và các thông tin liên hệ của bạn Bạn có thể nhìn thấy một vài thông tin được liệt kê bằng cách sử gói android.provider.Các provider này có thể kết nối tới các ứng dụng Android khác vói một số hạn chế nhất định

Một số chủ đề quan trọng của Content Provider:

- Content Provider Basics

- Creating a Content Provider

về thiết bị và sẵn sàng cho việc sử dụng chúng

Một ứng dụng có thể có một số Broadcast Receiver để đáp lại bất cứ thông báo nào mà nó cho là quan trọng Tất cả các receiver mở rộng từ lớp cơ

sở BroadcastReceiver

Broadcast Receiver không hiển thị một giao diện ngưòi dùng Tuy nhiên chúng có thể bắt đầu một activity để đáp lại thông tin mà chúng nhận, hay chúng có thể sử dụng NotificationManager để cảnh báo người dùng Notifications có thể lấy sự chú ý của người dùng bằng nhiều cách như lóe sáng đèn sau, rung, tạo ra âm thanh, Chúng thường tạo một biểu tượng trong thanh ữạng thái, nhờ đó người dùng có thể mở để lấy thông điệp

Trang 21

e Intents và Intent filter

Intents được sử dụng nhưg một cơ chế gửi thông điệp triệu gọi một hành động để xử lý, thường đi kèm với dữ liệu

Bạn có thể sử dụng Intents để hỗ trợ sự tương tác giữa bất kỳ thành phần ứng dụng trên một thiết bị Android Nó trả ra một tập các thành phần độc lập tới một thành phần đơn lẻ, kết nối bên trong hệ thống

Intents thường được sử dụng để bắt đàu một Activity mới, bên trong hoặc bên ngoài ứng dụng

Intents cũng có thể được sử dụng để quảng bá các thông điệp trên toàn

hệ thống Bất kỳ ứng dụng nào đăng ký một Broadcast Receiver cũng có thể lắng nghe và lấy dữ liệu từ đối tượng Intents gửi thông điệp

Sử dụng Intents để lan truyền các hành động - sự kiện bên trong các ứng dụng giống nhau - là một phần cơ bản của nguyên lý thiết kế Android

Trong phần lớn các trường hợp, Intents được sử dụng để ràng buộc các thành phần trong ứng dụng của bản Intents được sử dụng để bắt đầu (start) hoặc dừng (stop) và chuyển giữa các Activity trong một ứng dụng Tuy nhiên

nó cũng có thể sử dụng để kích hoạt các Service

Để mở một màn hình ứng dụng khác (Activity) trong ứng dụng của bạn, gọi phương thức startActivity, thông qua một Intent

startActivityị my Intent);

Khi phương thức này được gọi, nó sẽ tìm và kích hoạt một Activity đơn

mà nó tìm thấy trong ứng dụng Khi sử dụng startActivity, ứng dụng của bạn

sẽ không nhận bất kỳ thông báo nào đến khi quá trình kích hoạt kết thúc

f Process và Thread

Một ứng dụng có thể bao gồm một hay nhiều tiến trình Một tiến trình

là một đơn vị cơ bản khi một chương trình được thực thi Một hoặc nhiều tuyến (Thread) luôn chạy bên trong một tiến trình Tuyến là một thực thể trong một tiến trình, nó có thể được lập lịch cho việc thực thi Một tiến trình bắt đàu với một tuyến đơn, luôn gọi đến một tuyến chính hoặc mặc định Hơn thế nữa, tuyến có thể được tạo ra một cách tự động nếu cần thiết

Trang 22

Mỗi ứng dụng là một tiến trình có tài nguyên và không gian bộ nhớ riêng Trong một tiến trình có thể có một hoặc nhiều tuyến

Android có thể quyết định tắt một tiến trình tại một vài thời điểm, khi

bộ nhớ đầy và được yêu cầu bởi các tiến trình khác Các thành phần ứng dụng chạy trong tiến trình bị chết là kết quả của việc gọi hàm hủy Một tiến trình được khởi động trở lại khi các tiến trình khác kích hoạt chúng

Khi quyết định tiến trình nào bị hủy, Android đánh ừọng số quan trọng của tiến trình đó với người dùng Ví dụ, hệ thống sẽ tắt tiến trình hosting vì nó không xuất hiện ữên màn hình trong thòi gian dài, do đó, phụ thuộc vào trạng thái của các thành phần đang chạy mà hệ thống sẽ quyết định hủy tiến trình nào

Nếu code xử lý quá lâu, không kịp phản hồi lại các sự kiện người dùng trong 5 giây thì sẽ xuất hiện dialog “Application is not responding” và người dùng có thể đóng ứng dụng ngay lập tức

Trang 23

1.3.2 Cấu trúc của một ứng dụng Android

Android project là một hệ thống thư mục và file chứa toàn bộ source code, tài nguyên, mà mục đích cuối cùng là để đóng gói thành một file apk duy nhất File có đuôi apk là file ứng dụng của Android

Trong một thư mục project, có một số thành phần (file, thư mục con) được tạo ra mặc định, còn lại phần lớn thì sẽ được tạo ra sau nếu cần trong quá trình phát triển ứngdụng cấu trúc đầy đủ của một thư mục project:

- src/: Chứa toàn bộ source code (file java hoặc aidl)

- bin/ : Thư mục chức file Output sau khi build Đây là nơi bạn có thể tìm file apk

- gen/ : Chứa các file java tham chiếu vói tất cả resource có trong project Bạn không nên sửa file này, tất cả resource trong project tự động biên dịch vào lớp này để bạn có thể gọi chúng

- res/: Chứa các tài nguyên (resources) cho ứng dụng, chẳng hạn như file hình ảnh, file layout, các chuỗi (string),

- anim/ : Chứa các file xml dùng cho việc thiết lập các hiệu ứng động (animation)

- color/ : Chứa các file xml dùng định nghĩa màu sắc

- drawable/ :Chứa file hình ảnh (png, jpeg, gif), file xml định nghĩa cách vẽ các loại hình dạng khác nhau (shape)

- layouư: Chứa file xml dùng để dựng giao diện người dùng

- menu/: Chứa file xml quy định application menu

- raw/ : Chứa các file media, chẳng hạn như mp3 hay ogg

- values/: Chứa file xml định nghĩa các giá trị Khác với các resource trong các thư mục khác, resource ở thư mục này khi được định danh trong lớp

R thì sẽ không sử dụng file name để định danh, mà sẽ được định danh theo quy định bên ừong file xml đó

- xml/: Dùng chứa các file xml linh tinh khác, chẳng hạn như file xml quy định app widget, search metadata,

- libs/ : Chứa các thư viên riêng

Trang 24

- AndroidManifest.xml/ : File kiểm soát cách các thành phần ữong ứng dụng (activity, service, intent receiver, ) tương tác với nhau, cách ứng dụng tương tác với các ứng dụng khác, cũng như đăng ký các quyền hạn về sử dụng tài nguyên trong máy.

- build.properties : Tùy chỉnh các thiết lập cho hệ thống build, nếu bạn

sử dụng Eclipse thì file này không cần thiết

- build.xml: Chỉ sử dụng khi bạn dùng dòng lệnh (command line) để kiến tạo project

- default.properties: File này chứa các thiết lập cho project, chẳng hạn như build target, min SDK version, tốt hơn hết là không nên chỉnh sửa file này bằng tay

1.4 Các công nghệ lưu trữ dữ liệu của Android

1.4.1 Shared Preferences

Android cung cấp đối tượng Shared Preferences để giúp bạn lưu trữ những dữ liệu đơn giản Ví dụ ứng dụng của bạn cho phép người dùng lưu font size của text được hiển thị trong ứng dụng Trong trường họp này bạn cần lưu size của text để khi người dùng truy xuất vào lần tiếp theo text sẽ được load với size đã lưu Bạn có nhiều cách để làm như vậy Bạn có thể lưu

dữ liệu vào một file, nhưng bạn cần phải làm các thao tác quản lý file đó Và

vì thế, nếu bạn có những mẩu thông tin nhỏ cần lưu trữ thì việc lưu chúng vào file sẽ trở nên nặng nề Một lựa chọn khác là lưu dữ liệu vào database nhưng cũng không phù họp Bạn chỉ cần sử dụng Shared Preferences, lưu dữ liệu dưới dạng name/ value và dữ liệu đó sẽ tự động được lưu dưới dạng file xml cho bạn

• Tao và lưu trữ Preferences

Để tạo và thay đổi một Shared Provider, gọi phương thức getSharedPreferences trên ứng dụng Shared Provider chia sẻ dữ liệu thông qua các thành phần của một ứng dụng nhưng không có khả năng chia sẻ tới các ứng dụng khác Để thay đổi một Shared Provider dùng lớp SharedPreferences.Editer Lấy đối tượng Editer bằng việc gọi phương thức

Trang 25

edit() ừên đối tượng Shared Provider mà bạn muốn thay đổi Để lưu lại các thay đổi, gọi hàm commit().

• Lấy về giá trị Preferences chia sẻ

Truy cập tới dữ liệu được chia sẻ thông qua phương thức getSharedPreferences

Thông qua tên của Shared Preferences bạn muốn truy cập, và sử dụng phương thức get<type> để lấy về giá trị, trong đó type là kiểu dữ liệu được lưu trữ trước đó

1.4.2 Internal storage

- File được lưu trực tiếp trên thiết bị bộ nhớ trong.(Internal Storage)

- Dữ diệu này là private và chỉ chịu sự quản lí của chính ứng dụng đang chạy nó, các ứng dụng khác không thể truy cập được

1.4.3 External storage

Dữ liệu được lưu trữ ở bộ nhớ ngoài ( External Storage )

• Ưu điểm:

- Không gian lưu trữ lớn

- Dễ di chuyển giữa các thiết bị: máy tính, điện thoại di động

1.4.5 Cơ sở dữ liệu SQLite

SQLite cơ bản là 1 hệ quản trị cơ sở dữ liệu thu nhỏ, nó không có server, thao tác trên file và có thể sử dụng bởi bất cứ hệ điều hành nào

Trang 26

SQLite cần rất ít bộ nhớ lúc chạy (khoảng 250kb) do được tích hợp như một thư viện, là một phần của chương trình khi được tạo ra nên chạy nhanh hơn các hệ cơ sở dữ liệu mà tạo ra tiến trình chạy song song.

SQLite cung cấp dữ liệu dưới 3 dạng: Text, Integer, Real Tất cả kiểu khác phải được chuyển về một trong 3 dạng ừên trước khi được lưu trữ SQLite sẽ không kiểm ưa ràng buộc dữ liệu được lưu

Cơ sở dữ liệu do SQLite tạo ra sẽ private, tức là chỉ sử dụng cho bản thân ứng dụng

Ưu điểm của SQLite:

- Tính toàn vẹn: đảm bảo dữ liệu được chuyển đổi đầy đủ, không gây ra mất mát dữ liệu khi có lỗi phần cứng

- Cấu trúc gọn nhẹ, không cần cài đặt cấu hình

- Các thao tác đơn giản sẽ nhanh hơn hệ thống server

Sau khi tải về file xpi, kéo file này vào cửa sổ firefox để cài đặt plugin Sau khi cài đặt plugin xong thì vào Menu_tools trong firefox sẽ có chức năng SQLite Manager

1.5 Text to speech

Tính năng text to speech có nghĩa là chuyển văn bản thành giọng nói được google trang bị sẵn cho hệ điều hành Android từ phiên bản 1.6 Tính năng rất hữu ích trong nhiều trường hợp, đặc biệt với các phần mềm từ điển, giúp cho bạn có thể nghe phát âm của từ một cách đơn giản, ngoài ra một số phần mềm khác còn giúp bạn đọc nội dung đang hiển thị ừên màn hình, đọc tin nhắn hay số điện thoại đang gọi, hướng dẫn chỉ đường bằng giọng nói Chỉ có một vài phần mềm trên Android tự xây dựng cơ sở dữ liệu phát âm và

Trang 27

giải thuật của riêng mình còn phần lớn đều sử dụng dịch vụ có sẵn của Google để chuyển văn bản thành giọng nói.

Trang 28

CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 2.1 Khảo sát hệ thống

Một số từ điển Anh - Việt ữên hệ điều hành Android:

• Từ điển Anh Việt - Ylook phiên bản 1.6

Từ Điển Anh Việt - vLook

d m 13:39

Tra từ Từđiến

lầ&ỉbi

to be someone's bad books'

- không được ai ira

to be someone’s good book"

- được ai yêu mến irto bring someone to book"

- hòi tội và trừng phạt ai

Hình 2.1 Ảnh minh họa cho từ điển Anh Việt Vlook 1.6

+ Bộ từ điển này gồm có 60.000 từ, ngoài ra còn có từ điển 3000 từ

tiếng Anh theo Oxford

+ Có phát âm sẵn ữong từ điển Với những từ không có phát âm sẵn thì bạn có thể nhấn vào hình cái loa để tải phát âm của từ đó về

+ Giao diện đơn giản, dễ sử dụng

Trang 29

+ Hạn chế: số lượng từ không nhiều, ít chức năng, chỉ có những chức năng cơ bản là tra từ, phát âm, không tự động lưu từ đã ừa mà cần tích vào nút lưu từ thì từ mới được lưu lại.

• Từ điển Lạc Việt (Anh - Việt) phiên bản 2.5

• (thd ca) buổi bình minh

w in the m orning o f life vào buôl bình m infi của cuộc đời;

lúc tuổi thanh xuân

■1 th e morning after (the night before)

, dư vị khó chịu sau một đêm nhậu nhẹt chè chén

Hình 2.2 Ảnh minh họa cho từ điển Lạc Việt ịAnh - Việt) 2.5

+ Có hơn 400.000 từ và cụm từ Nội dung mục từ được biên soạn dựa

theo nội dung Bộ từ điển Anh - Việt - Anh phiên bản mtd9 EVA dành cho máy tính

+ Có chức năng dịch đoạn văn bản tiếng Anh sang tiếng Việt khi điện thoại kết nối vói Internet

+ Phát âm tất cả các từ, cụm từ có trong từ điển

+ Tự động lưu từ đã tra, có chức năng thêm từ vào thư mục Favorite giúp người sử dụng học từ vựng mà họ muốn

+ Giao diện của bộ từ điển này thân thiện, dễ sử dụng

+ Hạn chế: Phiên bản miễn phí có quá nhiều quảng cáo gây khó chịu cho người dùng, chưa có chức năng nhắc từ, tra từ bằng tin nhắn

Trang 30

Dictionary English Vietnamese phiền bản 2.2.2

©

e o o

TỪĐ iến Việt Anh

Cửa Số Tra Nhanh

Ngày đăng: 25/08/2016, 13:55

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w