Tải bản đầy đủ (.pdf) (22 trang)

Xây dựng ứng dụng lọc tin thông minh trên android

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.43 MB, 22 trang )

MỤC LỤC
CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI ......................................................................................... 1
1.1 Lý do chọn đề tài .......................................................................................................... 1
1.2 Mục tiêu đề tài .............................................................................................................. 1
1.3 Đối tượng và phạm vi nghiên cứu ................................................................................ 1
1.4 Phương pháp nghiên cứu ............................................................................................ 1
CHƯƠNG 2: TỔNG QUAN CƠ SỞ LÝ THUYẾT .................................................................. 2
2.1 Hệ điều hành Android ................................................................................................... 2
2.2 Material design ............................................................................................................. 3
2.3 Android studio .............................................................................................................. 3
2.4 RSS.............................................................................................................................. 3
CHƯƠNG 3: PHÂN TÍCH - THIẾT KẾ ................................................................................... 5
3.1 Mô tả yêu cầu của ứng dụng ........................................................................................ 5
3.2 Phân tích thiết kế mô hình hệ thống. ............................................................................ 5
3.2.1.1 Use-case Diagram: ............................................................................................. 5
Use-case Diagrame ........................................................................................................ 5
3.2.1.3 Activity Diagram: ................................................................................................. 6
Activity Diagrame ............................................................................................................ 6
Sequence Diagrame ...................................................................................................... 7
3.2.2.1 Giao diện loading ....................................................................................................... 8
3.2.2.2 Giao diện lựa chọn chủ đề ......................................................................................... 9
3.2.2.3 Giao diện các tin tức ............................................................................................... 10
3.2.2.4 Giao diện lựa chọn thành phố khi chọn chủ đề Tuyển dụng .................................... 11
3.2.2.5 Giao diện các tin tuyển dụng ................................................................................... 12
3.2.2.6 Giao diện các browser ............................................................................................ 13
3.2.3 Database ............................................................................................................. 14
3.2.3.1 Bảng Chủ đề: ........................................................................................................... 14
3.2.3.2 Bảng Thành phố ...................................................................................................... 14
3.2.3.3 Bảng Nội dung ......................................................................................................... 14
3.2.3.4 Bảng Nội dung tuyển dụng ....................................................................................... 14
3.2.3.5 Bảng RSS ................................................................................................................ 15


3.2.4 Chức năng ........................................................................................................... 15
3.2.4.1 Lựa chọn chủ đề theo ý muốn.................................................................................. 15
3.2.4.2 Xem tin tức theo từng chủ đề ................................................................................... 15
3.2.4.3 Lựa chọn thành phố khi chọn chủ đề tuyển dụng ..................................................... 15
3.2.4.4 Xem chi tiết tin tức ................................................................................................... 15


CHƯƠNG 4: XÂY DỰNG CHƯƠNG TRÌNH ....................................................................... 16
Xây dựng ứng dụng trên Android ..................................................................................... 16
CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ ............................................................................. 17
5.1 Các kết quả đạt được ................................................................................................. 17
5.2 Hướng phát triển ........................................................................................................ 17
5.3 Kết luận ...................................................................................................................... 17


TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC

THÔNG TIN KẾT QUẢ NGHIÊN CỨU CỦA ĐỀ TÀI
1. Thông tin chung:
- Tên đề tài: Xây dựng ứng dụng lọc tin thông minh trên Android
- Sinh viên thực hiện: Trần Minh Nhựt
- Lớp: CD12TT1

Khoa: Công nghệ thông tin

- Người hướng dẫn: Thạc sĩ Tiêu Kim Cương
2. Mục tiêu đề tài:
Lọc tin tức từ các trang báo mạng theo từng chủ đề: xã hội, thể thao, giải trí,…. cho
người dùng đỡ tốn thời gian trong việc tìm kiếm những thông tin theo mục mà họ ưa
thích.

3. Kết quả nghiên cứu:
3.1 Kết quả khoa học
- Phần mềm Lọc tin thông minh trên Android đã hoàn thiện.
- Một báo cáo khoa học.
3.2 Kết quả ứng dụng
- Sản phẩm công nghệ: Ứng dụng Android (phần mềm) phục vụ cho việc lọc những tin
tức cần thiết từ các trang báo mạng theo các chủ đề khác nhau
4. Công bố khoa học của sinh viên từ kết quả nghiên cứu của đề tài (ghi rõ tên tạp
chí nếu có) hoặc nhận xét, đánh giá của cơ sở đã áp dụng các kết quả nghiên cứu (nếu
có):
Ngày

tháng

năm

Sinh viên chịu trách nhiệm chính
thực hiện đề tài
(ký, họ và tên)


Nhận xét của người hướng dẫn về những đóng góp khoa học của sinh viên thực
hiện đề tài (phần này do người hướng dẫn ghi)
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................

......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................

Ngày

tháng

năm

Xác nhận của khoa

Người hướng dẫn

(ký tên và đóng dấu)

(ký, họ và tên)


TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THỦ ĐỨC

THÔNG TIN VỀ SINH VIÊN
CHỊU TRÁCH NHIỆM CHÍNH THỰC HIỆN ĐỀ TÀI

I. SƠ LƯỢC VỀ SINH VIÊN:
Ảnh 3x4


Họ và tên: Trần Minh Nhựt
Sinh ngày: 11 tháng 01 năm 1994
Nơi sinh: Nha Trang – Khánh Hoà
Lớp: CD12TT1

Khóa: 2012

Khoa: Công nghệ thông tin
Địa chỉ liên hệ: 4/10 Tân Lập, Dĩ An, Bình Dương, TP.Hồ Chí Minh
Điện thoại: 0122 575 15 99

Email:

II. QUÁ TRÌNH HỌC TẬP (kê khai thành tích của sinh viên từ năm thứ 1 đến năm
đang học):
* Năm thứ 1:
Ngành học:

Khoa:

Kết quả xếp loại học tập:
Sơ lược thành tích:
* Năm thứ 2:
Ngành học:

Khoa:

Kết quả xếp loại học tập:
Sơ lược thành tích:

...
Ngày

tháng

năm

Xác nhận của trường khoa

Sinh viên chịu trách nhiệm chính

(ký tên và đóng dấu)

thực hiện đề tài
(ký, họ và tên)


CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI
1.1 Lý do chọn đề tài
 Tính thời sự của đề tài: Công nghệ thông tin đang phát triển, lượng thông tin và

tin tức mỗi ngày càng tăng. Quá nhiều nguồn tin từ các trang báo mạng, mạng xã
hội. Cần một phần mềm chọn lọc những tin tức đó ra.
1.2 Mục tiêu đề tài
Xây dựng ứng dụng lọc tin thông minh trên Android sao cho:
- Người sử dụng có thể tìm những thông tin liên quan tới chủ đề mà họ lựa chọn
- Người sử dụng có thể tìm được công việc theo khả năng của mình tại các thành phố
gần khu vực họ sống. (trong chủ đề Tuyển dụng)
1.3 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu: Xây dựng ứng dụng lọc tin thông minh trên Android

Phạm vi: Các trang báo mạng được nhà nước Việt Nam cấp phép hợp pháp và đang
hoạt động.
1.4 Phương pháp nghiên cứu
- Phân tích, chia nhỏ bài toán: Client (ứng dụng Android) và WebServer.
- Thống kê các trang báo mạng lớn, uy tín trong nước.
- Thực nghiệm.
- Phân tích tài liệu.
- Hỏi ý kiến chuyên gia.

1


CHƯƠNG 2: TỔNG QUAN CƠ SỞ LÝ THUYẾT

2.1 Hệ điều hành Android
Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho
các thiết bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính bảng.
Ban đầu, Android được phát triển bởi tổng công ty Android, với sự hỗ trợ tài chính từ
Google và sau này được chính Google mua lại vào năm 2005. Android ra mắt vào năm
2007 cùng với tuyên bố thành lập Liên minh thiết bị cầm tay mở: một hiệp hội gồm
các công ty phần cứng, phần mềm, và viễn thông với mục tiêu đẩy mạnh các tiêu
chuẩn mở cho các thiết bị di động. Chiếc điện thoại đầu tiên chạy Android được bán
vào tháng 10 năm 2008.
Android có mã nguồn mở và Google phát hành mã nguồn theo Giấy phép
Apache. Chính mã nguồn mở cùng với một giấy phép không có nhiều ràng buộc đã
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. Ngoài ra, Android còn có một
cộng đồng lập trình viên đông đảo chuyên viết các ứng dụng để mở rộng chức năng
của thiết bị, bằng một loại ngôn ngữ lập trình Java có sửa đổi. Vào tháng 10 năm 2012,
có khoảng 700.000 ứng dụng trên Android, và số lượt tải ứng dụng từ Google Play,

cửa hàng ứng dụng chính của Android ước tính khoảng 25 tỷ lượt.
Những yếu tố này đã giúp Android trở thành nền tảng điện thoại thông minh
phổ biến nhất thế giới, vượt qua Symbian vào quý 4 năm 2010 và được các công ty
công nghệ lựa chọn khi họ cần một hệ điều hành không nặng nề, có khả năng tinh
chỉnh và giá rẻ chạy trên các thiết bị công nghệ cao thay vì tạo dựng từ đầu. Kết quả là
mặc dù được thiết kế để chạy trên điện thoại và máy tính bảng, Android đã xuất hiện
trên TV, máy chơi game và các thiết bị điện tử khác. Bản chất mở của Android cũng
khích lệ một đội ngũ đông đảo lập trình viên và những người đam mê sử dụng mã
nguồn mở để tạo ra những dự án do cộng đồng quản lý. Những dự án này bổ sung các
tính năng cao cấp cho những người dùng thích tìm tòi hoặc đưa Android vào các thiết
bị ban đầu chạy hệ điều hành khác. Sự thành công của hệ điều hành cũng khiến nó trở
2


thành mục tiêu trong các vụ kiện liên quan đến bằng phát minh, góp mặt trong cái gọi
là "cuộc chiến điện thoại thông minh" giữa các công ty công nghệ.
2.2 Material design
Material design là một hướng dẫn toàn diện về thiết kế trực quan, chuyển động
và tương tác giữa nhiều nền tảng và thiết bị. Có rất nhiều thư viện để giúp chúng ta tạo
ra ứng dụng đẹp mắt và tiết kiệm thời gian hơn.
Một số đối tượng Android cung cấp:
- Giao diện Material: Giao diện material mang đến một phong cách mới cho ứng dụng
và các Widget hệ thống, cho phép thay đổi màu của chúng và hiệu ứng mặc định khi
chạm và chuyển tiếp Activity.
- Danh sách và Thẻ: Android cung cấp hai loại Widget mới để hiển thị thẻ và danh
sách và hình ảnh động bằng phong cách material design (RecyclerView và CardView).
- Đổ bóng: ngoài các thuộc tính X và Y thông thường thì còn có thêm Z. Thuộc tính
này sẽ biểu diễn độ cao của một View và sẽ quyết định View nào xuất hiện trên View
nào và độ lớn của bóng.
- Hiệu ứng: Cung cấp các hiệu ứng khi chạm vào các View trong Android.

2.3 Android studio
Android studio là một công cụ lập trình do google phát triển hoàn toàn miễn
phí. Android studio có rất nhiều tính năng hỗ trợ để lập trình viên phát triển ứng dụng
nhanh hơn. Android studio phiên bản 2.0 trở lên còn hỗ trợ việc thay đổi giao diện trên
ứng dụng sau khi sửa file xml mà không cần chạy lại toàn bộ ứng dụng. Các thư viện
được sử dụng một cách dễ dàng hơn rất nhiều.
2.4 RSS
Là một định dạng tập tin thuộc họ XML dùng trong việc chia sẻ tin tức web
(Web syndication) được dùng bởi nhiều website tin tức và weblog. Công nghệ của RSS
cho phép người dùng Internet có thể đặt mua thông tin từ các websites có cung cấp khả
năng RSS, chúng thường là các site có nội dung thay đổi và được thêm vào thường
xuyên. Để có thể dùng công nghệ này, các người quản trị site đó tạo ra hay quản lí một
3


phần mềm chuyên dụng (như là một hệ thống quản lý nội dung). Với định dạng XML
máy có thể đọc được, có thể biểu diễn các bài tin mới thành một danh sách, với một
hoặc hai dòng cho mỗi bài tin và một liên kết đến bài tin đầy đủ đó. Khác với việc mua
nhiều ấn bản của các tờ báo hay tạp chí in giấy, hầu hết việc mua RSS là miễn phí.
Định dạng RSS cung cấp nội dung web và tóm lược nội dung web cùng với các
liên kết đến phiên bản đầy đủ của nội dung tin đó, và các siêu-dữ-liệu (meta-data)
khác. Cùng với việc hỗ trợ cung cấp chia sẻ thông tin, RSS cho phép những độc giả
thường xuyên của một website có thể theo dõi các cập nhật mới nhất.

4


CHƯƠNG 3: PHÂN TÍCH - THIẾT KẾ

3.1 Mô tả yêu cầu của ứng dụng

Ứng dụng bao gồm 6 chủ đề: Giải trí, kinh tế, thể thao, xã hội, thế giới và
tuyển dụng . Khi người dùng chọn 1 trong các chủ đề trên, chương trình sẽ load những
thông tin thu thập được từ các trang báo mạng về và show lên cho người dùng lựa
chọn. Ở phần Tuyển dụng, khi người dùng chọn thì ứng dụng sẽ hiện lên những thành
phố yêu cầu người dùng lựa chọn thành phố mà họ muốn tìm công việc. Khi người
dùng chọn thành phố nào thì ứng dựng sẽ load những công việc đang tuyển dụng ở
thành phố đó lên cho người dùng xem.
3.2 Phân tích thiết kế mô hình hệ thống.
3.2.1 Sơ đồ và mô tả:
3.2.1.1 Use-case Diagram:

Use-case Diagrame
3.2.1.2 Mô tả:
HOẠT ĐỘNG

MÔ TẢ

Xem tin về: Xã hội, Thế giới, Thể thao, Tuyển
dụng, Giải trí, Kinh tế

Người dùng lựa chọn các chủ đề sau: Xã hội,
Thế giới, Thể thao, Tuyển dụng, Giải trí, Kinh tế.

Hiển thị tin về: Xã hội, Thế giới, Thể thao,
Tuyển dụng, Giải trí, Kinh tế

Người dùng xem những tin tức có trong chủ đề
đã lựa chọn

5



3.2.1.3 Activity Diagram:

Activity Diagrame
3.2.1.4 Mô tả:
Người dùng lựa chọn 1 trong các chủ đề mà chương trình cung cấp. Sau khi lựa
chọn, chương trình sẽ lấy tất cả các tin tức liên quan tới chủ đề đó và hiển thị lên cho
người dùng. Người dùng muốn xem chi tiết hơn thì nhấn vào tin cần xem. Sau đó,
chương trình sẽ mở chi tiết về tin mà người dùng vừa mới lựa chọn.

6


3.2.1.5 Sequence Diagrame:

Sequence Diagrame
3.2.1.6 Mô tả:
Khi người dùng mở ứng dụng. Ứng dụng sẽ kiểm tra xem thiết bị của người
dùng có kết nối với Internet không? Nếu có, ứng dụng sẽ kiểm tra trên thiết bị đó đã có
dataBase chưa? Nếu chưa thì hệ thống sẽ tạo mới. Nếu như máy không có kết nối với
Internet, hệ thống sẽ hiện lên thông báo. Yêu cầu người dùng kết nối thiết bị với
Internet.
Bước tiếp theo, hệ thống sẽ hiện lên giao diện lựa chọn chủ đề cho người. Có
tất cả là sáu chủ đề cho người dùng lựa chọn. Khi người dùng lựa chọn chủ đề, hệ
thống sẽ lấy thông tin của chủ đề đó và truy cập tới dataBase lấy RSS của chủ đề, xử
lý, trả về danh sách các tin của chủ đề và hiện các tin đó lên cho người dùng lựa chọn.
Khi người dùng lựa chọn một tin trong danh sách tin tức, hệ thống truy cập tới
dataBase lấy link của tin tức đó, xử lý và hiển thị lên màn hình trang web về tin tức đó.


7


3.2.2 Mockup ứng dụng:
3.2.2.1 Giao diện loading

Giao diện loading

8


3.2.2.2 Giao diện lựa chọn chủ đề

Giao diện chọn chủ đề

9


3.2.2.3 Giao diện các tin tức

Giao diện chọn các tin tức

10


3.2.2.4 Giao diện lựa chọn thành phố khi chọn chủ đề Tuyển dụng

Giao diện chọn thành phố trong chủ đề tuyển dụng

11



3.2.2.5 Giao diện các tin tuyển dụng

Giao diện các tin tức tuyển dụng

12


3.2.2.6 Giao diện các browser

Giao diện trang web với tin tức người dùng lựa chọn

13


3.2.3 Database
3.2.3.1 Bảng Chủ đề:
 Chứa 6 chủ đề cho người dùng lựa chọn
Tên cột

Mô tả

Kiểu dữ liệu

IDCD

Mã chủ đề

String


TENCD

Tên chủ đề

String

3.2.3.2 Bảng Thành phố
 Chứa tên của thành phố và link rss tuyển dụng của thành phố đó
Tên cột

Mô tả

Kiểu dữ liệu

NAME_CITY

Tên thành phố

String

RSS_CITY

Rss thành phố

String

3.2.3.3 Bảng Nội dung
 Chứa nội dung của các chủ đề Giải trí, kinh tế, thể thao, xã hội, thế giới
Tên cột


Mô tả

Kiểu dữ liệu

TITLE

Tiêu đề

String

LINK

Link website

String

PIC

Link picture

String

IDCD

Mã chủ đề

String

3.2.3.4 Bảng Nội dung tuyển dụng

 Chứa nội dung của các chủ đề Tuyển dụng
Tên cột

Mô tả

Kiểu dữ liệu

TITLE

Tiêu đề

String

LINK

Link website

String

DATE

Ngày đăng tin

String

14


3.2.3.5 Bảng RSS
 Chứa RSS của các chủ đề Giải trí, kinh tế, thể thao, xã hội, thế giới

Tên cột

Mô tả

Kiểu dữ liệu

ID

Mã RSS

String

LINK

Link RSS

String

IDCD

Mã chủ đề

String

3.2.4 Chức năng
3.2.4.1 Lựa chọn chủ đề theo ý muốn
Khi người dùng khởi chạy ứng dụng lần đầu tiên, ứng dụng sẽ tạo database mới
bao gồm những link RSS được tổng hợp từ trên mạng. Tiếp theo, ứng dụng sẽ kiểm tra
xem thiết bị của bạn có thể kết nối được với Internet không? Nếu như không thì hệ
thống sẽ đưa ra thông báo yêu cầu bạn kết nối. Nếu như máy bạn đã có mạng thì hệ

thống sẽ chuyển bạn sang giao diện lựa chọn chủ đề. Có tất cả là 6 chủ đề cho mọi
người lựa chọn: Giải trí, kinh tế, thể thao, xã hội, thế giới và tuyển dụng.
3.2.4.2 Xem tin tức theo từng chủ đề
Khi người dùng lựa chọn chủ đề cần xem, hệ thống sẽ truy cập vào database để
lấy link theo chủ đề mà người dùng lựa chọn. Parse file rss đó xong hiện lên gridView
cho người dùng xem danh sách các tin tức trong chủ đề mà họ đã lựa chọn.
3.2.4.3 Lựa chọn thành phố khi chọn chủ đề tuyển dụng
Khi người dùng lựa chọn chủ đề tuyển dụng, hệ thống sẽ hiện lên giao diện yêu
cầu người dùng lựa chọn thành phố mà họ muốn tìm việc. Sau khi người dùng đã lựa
chọn thành phố, hệ thống truy cập vào database và lấy RSS tuyển dụng của thành phố
đó, parse và hiện danh sách tuyển dụng của thành phố đó lên cho người dùng xem.
3.2.4.4 Xem chi tiết tin tức
Khi người dùng lựa chọn một tin tức cụ thể, hệ thống sẽ lấy link websites của
tin tức đó và hiện giao diện browser lên cho người dùng xem rõ hơn về tin tức đó.

15


CHƯƠNG 4: XÂY DỰNG CHƯƠNG TRÌNH

Xây dựng ứng dụng trên Android
Dựa vào các giao diện mockup đã được dựng trước, giao diện ứng được hiện
thực bằng các layout XML. Sử dụng các khái niệm thiết kệ mới để tạo ra ứng dụng
đẹp mắt và hiệu ứng mượt mà. Để ứng dụng tránh phần nặng nề thì các hình ảnh có thể
sẽ được thay thế bằng ảnh svg (là một dạng ảnh được vẽ bằng vector và đơn sắc, ảnh
sẽ phù hợp với mọi kích cỡ và không bị bể khi thay đổi kích thước) và ảnh dạng xml.
Để dễ dàng sửa chữa thì các chuỗi, hay màu sắc phần lớn đều được khai báo trong file
“string.xml” và “color.xml”.
Sau khi đã hiện thực được giao diện, các chức năng của ứng dụng được hiện
thực dần dần theo thứ tự ưu tiên chức năng quan trọng trước. Các class được phân chia

rõ ràng theo nhiệm vụ riêng và được đặt trong các package theo một chuẩn nhất định.
Để ứng dụng mượt mà ứng dụng đã kết hợp Runnable và AsyncTask để tạo ra các
luồng xử lý song song tránh việc thực hiện quá nhiều nhiệm vụ trên luồng chính gây ra
hiện tượng ứng dụng bị đơ.

16


CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ

5.1 Các kết quả đạt được
Ứng dụng lọc tin thông minh trên Android
5.2 Hướng phát triển
- Cho phép người dùng đọc tin offline
- Hỗ trợ thêm các các ngôn ngữ thông dụng: Anh, Pháp, Đức,….
5.3 Kết luận
Sau khi hoàn thành “Ứng dụng lọc tin thông minh trên Android” tôi đã cũng cố thêm
được rất nhiều kiến thức về lập trình trong lĩnh vực Android. Ngoài ra ứng dụng trong
tương lai sẽ giúp mọi người có thể dễ dàng tìm kiếm và xem những tin tức mà họ
muốn mà không cần tốn thời gian nhiều.

TÀI LIỆU THAM KHẢO
- Tài liệu tiếng Anh
[1] Tiêu Kim Cương: Bài giảng Lập trình Android nâng cao, trường Cao đẳng Công
nghệ Thủ Đức, 2014
[2] Trang Web: />[3] Trang Web: />
17




×