Tải bản đầy đủ (.doc) (48 trang)

Ứng dụng đọc báo với RSS

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 (3.64 MB, 48 trang )

BAN CƠ YẾU CHÍNH PHỦ
HỌC VIỆN KỸ THUẬT MẬT MÃ
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

THỰC TẬP CƠ SỞ

TÍCH HỢP MẠNG XÃ HỘI VÀO ỨNG DỤNG ANDROID

Ngành: Công nghệ thông tin
Chuyên ngành: An toàn thông tin

Hà Nội, 2017


BAN CƠ YẾU CHÍNH PHỦ
HỌC VIỆN KỸ THUẬT MẬT MÃ
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

THỰC TẬP CƠ SỞ

TÍCH HỢP MẠNG XÃ HỘI VÀO ỨNG DỤNG ANDROID

Ngành: Công nghệ thông tin
Chuyên ngành: An toàn thông tin

Sinh viên thực hiện:
Trịnh Thị Mai
Lớp: AT10D
Người hướng dẫn:
GV: Lê Anh Tiến
Khoa Công nghệ thông tin – Học viện Kỹ thuật mật mã



Hà Nội, 2017


MỤC LỤC
Danh mục kí hiệu và viết tắt..................................................................................vi
Danh mục hình vẽ..................................................................................................vii
Danh mục bảng.....................................................................................................viii
Lời cảm ơn..............................................................................................................ix
Lời nói đầu...............................................................................................................x
Chương 1. Giới thiệu chung...................................................................................1
1.1. Android là gì?....................................................................................................1
1.2.1. Khái niệm...............................................................................................1
1.2.2. Lịch sử phát triển...................................................................................2
1.1.3. Các đặc điểm của Android......................................................................3
1.1.4. Kiến trúc Android....................................................................................3
1.1.5. Giao diện và các phiên bản Android.......................................................6
1.2. Chuẩn RSS......................................................................................................17
1.2.1. Khái niệm chuẩn RSS............................................................................17
1.2.2. Cấu trúc các thẻ RSS.............................................................................17
1.3. Kết luận chương 1...........................................................................................18
Chương 2. Phần ứng dụng....................................................................................20
2.1. Khảo sát yêu cầu hệ thống................................................................................20
2.2. Phân tích yêu cầu..............................................................................................20
2.2.1. Sơ đồ nghiệp vụ:...................................................................................20
2.2.2. Đặc tả chi tiết Usecase.........................................................................20
2.3. Thiết kế ứng dụng.............................................................................................21
2.3.1. Thiết kế giao diện ứng dụng..................................................................21
2.3.2. Thiết kế giao diện chức năng................................................................23
2.4. Kết luận chương 2...........................................................................................24

Chương 3. Phần chức năng...................................................................................25
3.1. Add SDK..........................................................................................................25
3.2. Add Facebook App ID......................................................................................25
3.3. Kết luận chương 3............................................................................................25
Chương 4: Xây dựng ứng dụng thực nghiệm và kết quả...................................26
4.1. Yêu cầu đối với chương trình...........................................................................26
4.2. Lựa chọn công cụ lập trình...............................................................................26
4.3. Giới thiệu chương trình....................................................................................27
4.4. Kết luận chương 4............................................................................................29
Kết luận..................................................................................................................30
Tài liệu tham khảo.................................................................................................31
Phụ lục.....................................................................................................................32

i


DANH MỤC KÍ HIỆU VÀ VIẾT TẮT

NFC

Near-Field Communications, công nghệ kết nối không dây trong phạm
vi tầm ngắn.

SDK

Gói phát triển phần mềm

UI

User Interface, Giao diện người dùng


GSM

Global System for Mobile Communications

EDGE

Enhanced Data Rates for GSM Evolution

IDEN

Mạng số tích hợp nâng cao

CDMA

Code Division Multiple Access

LTE

Long Term Evolution

JPEG

oint Photographic Experts Group

PNG

Portable Network Graphics

GIF


Graphics Interchange Format

SMS

Short Message Services

MMS

Multimedia Messaging Service

HTML

HyperText Markup Language

XHTML

Extensible HyperText Markup Language

GPS

Global Positioning System

ii


DANH MỤC HÌNH VẼ
Hình 1.1: các phiên bản SDK Android......................................................................2
Hình 1.2: Kiến trúc Android......................................................................................4
Hình 1.3: Android 1.0................................................................................................6

Hình 1.4: Android 1.1................................................................................................7
Hình 1.5: Android 1.5................................................................................................7
Hình 1.6: Android 1.6................................................................................................8
Hình 1.7: Android 2.0................................................................................................9
Hình 1.8: Android 2.2..............................................................................................10
Hình 1.9: Android 2.3..............................................................................................10
Hình 1.10: Android 3.0............................................................................................11
Hình 1.11: Android 4.0............................................................................................12
Hình 1.12: Android 4.3............................................................................................13
Hình 1.13: Android 4.4............................................................................................13
Hình 1.14: Android 5.0............................................................................................14
Hình 1.15: Android 6.0............................................................................................14
Hình 1.16 :hình ảnh Android 7.0 trên Samsung Galaxy J7 Prime..........................15
Hình 1.17: Android 8.0............................................................................................16
Hình 2.1: Usecase người dùng................................................................................20
Hình 4.1: Giao diện ứng dụng.................................................................................27
Hình 4.2: Hành động Login và Logout...................................................................28
Hình 4.3: Màn hình đăng nhập................................................................................29

iii


DANH MỤC BẢNG

Bảng 1. Đặc tả chi tiết Usecase đăng nhập..............................................................20

iv


LỜI CẢM ƠN

Trong quá trình thực hiện thực tập cơ sở này, tôi đã nhận được sự giúp đỡ
tận tình của cán bộ hướng dẫn là GV. Lê Anh Tiến – Khoa Công nghệ thông tin
Học viện Kỹ thuật Mật mã,….
Xin cảm ơn tất cả mọi người đã tạo những điều kiện tốt nhất để tôi hoàn
thành thực tập cơ sở này!
SINH VIÊN THỰC HIỆN

Trịnh Thị Mai

v


LỜI NÓI ĐẦU
Ngày nay, khi mà các thiết bị di động nói chung và điện thoại di
động( Smartphone) nói riêng đã và đang trở thành vật bất thân của hầu hết mọi
người trong cuộc sống hàng ngày, trên mọi lĩnh vực và ngành nghề.
Trong đó, nhưng chiếc Snmartphone sử dụng hệ điều hành Android chiếm
phần lớn tổng số Smartphone trên toàn thế giới. Theo báo cái tài chính quí 4 năm
2014, Google đã công bố, có đến 250 triệu thiết bị chạy Android được kích haotj
và có đến hơn 11 tỉ lượt tải ứng dụng từ Android market. Điều đó cho thấy, các ứng
dụng Android đang ngày càng phổ biến và đáp ứng gần như đầy đủ những yêu cầu
của khách hàng.
Từ những con số trên, ta có thể thấy được sự phát triển của lập trình ứng
dụng Android và công việc của Lập trình viên Android luôn luôn tìm tòi và phát
triển nhiều hơn những ứng dụng phục vụ người dùng.
Ngoài ra, khi mà các ứng dụng Android càng phát triển mạnh mẽ thì người
dùng càng đòi hỏi ở chúng sự tiện lợi, nhanh chóng, và dễ chia sẻ khi những kết
nối mạng xã hội bùng nổ mạnh mẽ như Facebook, Twitter, Google… mà không
cần thông qua app chính thức. Chính vì vậy, chúng tôi phát triển một ứng dụng mà
ở đó đã tích hợp sẵn mạng xã hội dựa trên một ứng dụng đọc tin tức có hiệu quả và

chất lượng.
Bài báo cáo được chia thành 4 Chương:
- Chương 1: Giới thiệu chung
- Chương 2: Phần ứng dụng
- Chương 3: Phần chức năng
- Chương 4: Thực nghiệm.
SINH VIÊN THỰC HIỆN

Trần Văn Tam

vi


CHƯƠNG 1. GIỚI THIỆU CHUNG
1.1. Android là gì?
1.1.1. Khái niệm:
Android là một hệ điều hành mã nguồn mở và là một hệ điều hành dựa trên
Linux cho các thiết bị mobile như Smartphone và máy tính bảng. Ban đầu, Android
được phát triển bởi công ty Android với sự hỗ trợ tài chính của Google, tuy nhiên
sau đó Google đã mua lại vào năm 2005.
Android đưa ra một phương pháp thống nhất để phát triển ứng dụng cho các
thiết bị đi động, nghĩa là lập trình viên chỉ cần phát triển Android và các ứng dụng
khác có thể chạy trên các thiết bị đi động khác nhau chạy hệ điều hành Android.
1.1.2. Lịch sử phát triển:
- 10/2003, Android, Inc, được thành lập tại Palo Alto, Califorlia bởi Andy
Rubin, Rich Miners, Nick Sears và Chris White.
- Tháng 7/2005, Google mua lại Android, Inc.
- 5/11/2007, Open Handset Alliance, liên minh giữa các nhà sản xuất được
thành lập.
- 12/11/2007, phiên bản Beta của Android Software Development

Kit( SDK) được công bố bởi Google.
- 23/9/2008, phiên bản thương mại đầu tiên Android 1.0 được công bố.
Thiết bị chạy Android đầu tiên là HTC Dream.
- 09/02/2009, phát hành bản cập nhật Android 1.1 dành riêng cho T-Mobile
G1
- 30/04/2009, phát hành bản cập nhật 1.5 dựa trên nhân Linux 2.6.27.
- 15/09/2009, phát hành bộ SDK dành cho Android 1.6 dựa trên nhân
Linux 2.6.29.
- 26/10/2009, phát hành bộ SDK dành cho Android 2.0 dựa trên nhân
Linux 2.6.29.
- 03/12/20099, Phát hành bộ SDK Android 2.0.1.
- 12/01/2010, phát hành bộ SDK Android 2.1.
- 20/05//2010, phát hành bộ SDK dành cho Android 2.2 dựa trên nhân
Linux 2.6.32.
- 06/12/2010, phát hành bộ SDK Android 2.2.
- 06/12/2010, phát hành bộ SDK Android 2.3.
1


-

-

22/02/2011, phát hành bộ SDK Android 2.3.3..
22/02/2011, phát hành bộ SDK Android 3.0 dánh cho tablet.
10/05/2011, phát hành bộ SDK Android 3.0.
18/07/2011, phát hành bộ SDK Android 3.2
Cuối năm 2011, Android 4.0 Ice Cream Sandwich được ra mắt.
27/06/2012, Google công bố phiên bản tiếp theo là 4.1 Jelly Bean với
mục đích đầu tiên là cải thiên giao diện người dung, tính năng và hiệu

suất.
30/10/2012, Google chính thức tuyên bố cập nhật hệ điều hành Android
của hãng lên phiên bản 4.2 và vẫn giữ nguyên tên gọi “Jelly Bean”.
2013, Android KitKat 4.4 được giới thiệu.
2014, Android Lolipop 5.0 ra mắt công chúng.
09/2015, Android Marshmallow 6.0 được phát hành.
06/2016, Android Nougat 7.0 được ra mắt chính thức.
2017, Android Oreo được Google phục vụ

Hình 1.1: Các Phiên bản SDK Android
2


1.1.3. Các đặc điểm của Android:;
- UI đẹp: Màn hình Android OS cơ bản cung cấp một giao diện người dùng
đẹp và có tính thẩm mĩ cao.
- Connectivity: GSM/EDGE, IDEN, CDMA, Wi-fi, Bluetooth, LTE,
WiMAX…
- Lưu trữ: SQLite, một relational database gọn nhẹ.
- Hỗ trợ media: H.263, H.264, MPEG-4 SP, AMP, AMP-WB, AAC, MP3,
JPEG, PNG, GIF,…
- Thông báo: SMS, MMS
- Trình duyệt web: Dựa trên thiết bị Webkit mã nguồn mở, đi kèm thiết bị
V8 JavaScript của Chormehoox trợ HTML5 và CS3.
- Multi—touch: Android hỗ trợ cho multi- touch mà đã được tạo ban đầu
cho các Handset như HTC Hero.
- Widget tùy chọn: Widgets có thể thay đổi kích cỡ, vì thế, người dùng có
thể mở rộng để hiển thị nhiều nội dung , hoặc thu nhỏ để tiết kiệm không
gian.
- Đa ngôn ngữ: Hỗ trợ text đơn hướng và song hướng.

- GCM: Google Cloud Messaging là dịch vụ cho phép lập trình viên gửi
thông điệp dữ liệu ngắn tới người dùng trên thiết bị Android, mà không
cần Syns Solution.
- Wi-fi Direct: Cho phép các ứng dụng dò tìm và ghép cặp 1 cách trực tiếp,
thông qua một kết nối peer to peer.
- Android Beam:L Một công nghệ dựa trên NFC phổ biến cho phép người
dùng chia sẻ tức thì, chỉ cần kích hoạt NFC của 2 điện thoại với nhau.
1.1.4. Kiến trúc Android

3


Hình 1.2: Kiến trúc Android
- Applications
Hệ điều hành Android tích hợp sẳn một số ứng dụng cơ bản như email
client, SMS, lịch điện tử, bản đồ, trình duyệt web, sổ liên lạc và một số
ứng dụng khác. Ngoài ra tầng này cũng chính là tầng chứa các ứng dụng
được phát triển bằng ngôn ngữ Java.
- Application Framwork
Tầng này của hệ điều hành Android cung cấp một nền tảng phát triển ứng
dụng mở qua đó cho phép nhà phát triển ứng dụng có khả năng tạo ra các
ứng dụng vô cùng sáng tạo và phong phú. Các nhà phát triển ứng dụng
được tự do sử dụng các tính năng cao cấp của thiết bị phần cứng như:
thông tin định vị địa lý, khả năng chạy dịch vụ dưới nền, thiết lập đồng
hồ báo thức, thêm notification vào status bar của màn hình thiết bị…
Người phát triển ứng dụng được phép sử dụng đầy đủ bộ API được dùng
trong các ứng dụng tích hợp sẳn của Android. Kiến trúc ứng dụng của
Android được thiết kế nhằm mục đích đơn giản hóa việc tái sử dụng các
component. Qua đó bất kì ứng dụng nào cũng có thể công bố các tính
năng mà nó muốn chia sẻ cho các ứng dụng khác (VD: Ứng dụng email

có muốn các ứng dụng khác có thể sử dụng tính năng gởi mail của nó).
Phương pháp tương tự cho phép các thành phần có thể được thay thế bởi
người sử dụng.
Tầng này bao gồm một tập các services và thành phần sau:
4


 Một tập phong phú và có thể mở rộng bao gồm các đối tượng View
được dùng để xây dựng ứng dụng như: list, grid, text box, button
và thậm chí là một trình duyệt web có thể nhúng vào ứng dụng.
 Content Provider: Cho phép các ứng dụng có thể truy xuất dữ liệu
từ các ứng dụng khác hoặc chia sẽ dữ liệu của chúng.
 Resource Manager: Cung cấp khả năng truy xuất các tài nguyên
non-code như hình ảnh hoặc file layout.
 Notification Manager: Cung cấp khả năng hiển thị custom alert
trên thanh status bar.
 Activity Manager: Giúp quản lý vòng đời của một ứng dụng.
- Libraries
 System C library: một thể hiện được xây dựng từ BSD của bộ thư
viện hệ thống C chuẩn (libc), được điều chỉnh để tối ưu hóa cho
các thiết bị chạy trên nền Linux.
 Media libraries: Bộ thư viện hổ trợ trình diễn và ghi các định dạng
âm than và hình ảnh phổ biến.
 Surface manager: Quản lý hiển thị nội dung 2D và 3D.
 LibWebCore: Một web browser engine hiện đại được sử dụng
trong trình duyệt của Android lần trong trình duyệt nhúng web
view được sử dụng trong ứng dụng.
 SGL: Engine hổ trợ đồ họa 2D.
 3D libraries: Một thể hiện được xây dựng dựa trên các APIs của
OpenGL ES 1.0. Những thư viện này sử dụng các tăng tốc 3D bằng

phần cứng lẫn phần mềm để tối ưu hóa hiển thị 3D.
 FreeType: Bitmap and vector font rendering.
 SQLite: Một DBMS nhỏ gọn và mạnh mẽ.
- Android Runtime
Hệ điều hành Android tích hợp sẳn một tập hợp các thư viện cốt lõi cung
cấp hầu hết các chức năng có sẵn trong các thư viện lõi của ngôn ngữ lập
trình Java. Mọi ứng dụng của Android chạy trên một tiến trình của riêng
nó cùng với một thể hiện của máy ảo Dalvik. Máy ảo Dalvik thực tế là
một biến thể của máy ảo Java được sửa đổi, bổ sung các công nghệ đặc
5


trưng của thiết bị di động. Nó được xây dựng với mục đích làm cho các
thiết bị di động có thể chạy nhiều máy ảo một cách hiệu quả. Trước khi
thực thi, bất kì ứng dụng Android nào cũng được convert thành file thực
thi với định dạng nén Dalvik Executable (.dex). Định dạng này được thiết
kế để phù hợp với các thiết bị hạn chế về bộ nhớ cũng như tốc độ xử lý.
Ngoài ra máy ảo Dalvik sử dụng bộ nhân Linux để cung cấp các tính
năng như thread, low-level memory management.
- Linux Kernel
Hệ điều hành Android được xây dựng trên bộ nhân Linux 2.6 cho những
dịch vụ hệ thống cốt lõi như: security, memory management, process
management, network stack, driver model. Bộ nhân này làm nhiệm vụ
như một lớp trung gian kết nối phần cứng thiết bị và phần ứng dụng.

1.1.5. Giao diện và các phiên bản Android
- Android 1.0:

Hình 1.3: Android 1.0
 Tích hợp các dịch vụ của Google.

 Trình duyệt web có khả năng hiển thị, phóng to các trang web
HTML và XHTML.
6


 Tải và cập nhật ứng dụng từ Android Market.
 Hỗ trợ đa nhiệm, kết nối wi-fi và bluetooth.
- Android 1.1:

Hình 1.4: Android 1.1
 Thêm một vài tính năng đơn giản vào các ứng dụng hiện có so với
phiên bản 1.0.
- Android 1.5 Cupcake:

Hình 1.5: Android 1.5
 Rút ngắn thời gian mở trình Camera, chụp ảnh nhanh hơn.
 Cải thiện thời gian thu nhận tín hiệu GPS.
7


 Hỗ trợ bàn phím ảo.
 Tải video trực tiếp lên Youtube.
- Android 1.6 Donut:

Hình 1.6: Android 1.6
 Bổ sung hộp tìm kiếm nhanh và tìm kiếm bằng giọng nói.
 Tích hợp camera, quay phim và thư viện hình.
 Hiểm thị trạng thái của pin.
 Hỗ trợ mạng CDMA.
 Tính năng chuyển văn bản thành giọng nói hỗ trợ đa ngôn ngữ.

- Android 2.0 Eclair:

8


Hình 1.7: Android 2.0
 Hỗ trợ đồng bộ danh bạ, email với nhiều tài khoản.
 Đồng bộ Microsoft Exchange.
 Hỗ trợ Bluetooth 2.1.
 Trình duyệt web giao diện mới, hỗ trợ HTML5.
 Bổ sung tính năng cho lịch làm việc.
- Android 2.2 Froyo:

9


Hình 1.8: Android 2.2
 Bàn phím hỗ trợ nhiều ngôn ngữ.
 Adobe flash 10.1
- Android 2.3 Gingerbread:

10


Hình 1.9: Android 2.3
 Đàm thoại Internet.
 Chọn từ và hỗ trợ copy/paste thuận tiện.
 Tùy chỉnh giao diện người dùng.
- Android 3.0 Honeycomb:


Hình 1.10: Android 3.0
 Tối ưu dành riêng cho máy tính bảng, tablet.
 Đa nhiệm, thông báo mới, hỗ trợ tùy biến.
 Hỗ trợ giao thwucs truyền tải hình ảnh, đa phương tiện.
- Android 4.0 Ice Cream

11


Hình 1.11: Android 4.0
 Đóng ứng dụng bằng cách vuốt nhanh.
 Chụp video 1080p.
 Mở khóa điện thoại bằng khuôn mặt.
- Android 4.1-4.3 Jelly Bean

12


Hình 1.12: Android 4.3
 Cải tiến tính năng tìm kiếm.
 Khả năng chia sẻ tệp với bạn bè thông qua Android Beam
- Android 4.4 Kitkat

13


Hình 1.13: Android 4.4
 Giới thiệu lệnh thoại “OK Google”.
 Hỗ trợ emoji và cải tiến đa tác vụ.
- Android 5.0 Lollipop


Hình 1.14: Android 5.0
 Có thể mở khóa điện thoại bằng một thiết bị bluetooth đáng tin cậy.
- Android 6.0 Marshmallow:

Hình 1.15: Android 6.0
 Cải thiện tuổi thọ pin.
 Hỗ trợ cảm biến vân tay.
14


- Android 7.0 Nougat

Hình 1.16 :hình ảnh Android 7.0 trên Samsung Galaxy J7 Prime
 Cải thiện hiệu suất tổng thể.
 Tính năng đa nhiệm đa màn hình gốc.
- Android 8.0 Oreo

15


Hình 1.17: Android 8.0
 Cải tiến chất lượng âm thanh, nhập văn bản cũng nhưu qquanr lý
tài nguyên.
 Thông báo được cải thiện thêm một lần nữa, có thể mong muốn
một chế độ video hình ảnh trong hình ảnh thực sự.

16



1.2. Chuẩn RSS:
1.2.1. Khái niệm chuẩn RSS:
- RSS ( viết tắt từ Really Simple Syndication ) là một tiêu chuẩn định dạng
tài liệu dựa trên XML nhằm giúp người sử dụng dễ dàng cập nhật và tra
cứu thông tin một cách nhanh chóng và thuận tiện nhất bằng cách tóm
lược thông tin vào trong một đoạn dữ liệu ngắn gọn, hợp chuẩn.
- Dữ liệu này được các chương trình đọc tin chuyên biệt ( gọi là News
reader) phân tích và hiển thị trên máy tính của người sử dụng. Trên trình
đọc tin này, người sử dụng có thể thấy những tin chính mới nhất, tiêu đề,
tóm tắt và cả đường link để xem toàn bộ tin.
1.2.2. Cấu trúc các thẻ RSS:
Dưới đây là một ví dụ về một phần RSS được lấy từ bản tin thời sự của
vnexpress.net.
<rss xmlns:slash=" version="2.0">
<channel>
<title>Thời sự - VnExpress RSS</title>
<description>VnExpress RSS</description>
<image>
<url>
/>s.png
</url>
<title>Tin nhanh VnExpress - Đọc báo, tin tức online
24h</title>
<link></link>
</image>
Tue, 17 Oct 2017 10:28:52 +0700</pubDate>
<generator>VnExpress</generator>
<link> /><item>
<title>
Trung ương Đảng yêu cầu công khai tài sản của lãnh đạo

</title>
<description>
</a>
Ban Bí thư
Trung ương Đảng vừa có văn bản hướng dẫn công
khai nhiều nội dung, trong đó có kết quả xử lý
tham nhũng, thu nhập của cán bộ.
]]>
</description>
Tue, 17 Oct 2017 00:41:01 +0700</pubDate>
<link>
/></link>

17


×