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

ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc

21 648 1
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Ứng Dụng Phần Mềm Trên Mobile
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ án tốt nghiệp
Thành phố Hà Nội
Định dạng
Số trang 21
Dung lượng 650,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ỨNG DỤNG PHẦN MỀM TRÊN MOBILE

Trang 1

Mục lục

1 MÁY ẢO DALVIK 3

2 KIẾN TRÚC CỦA ANDROID 3

3 CÁC THÀNH PHẦN TRONG MỘT ANDROID PROJECT 4

3.1 AndroidManifest.xml 4

3.2 File R.java 4

4 CHU KỲ ỨNG DỤNG ANDROID 4

4.1 Activity Stack 4

4.2 Các trạng thái của chu kỳ sống 5

5 CÁC THÀNH PHẦN GIAO DIỆN TRONG ANDROID 6

5.1 View 6

5.2 View group 6

5.3 Widget 7

6 TELEPHONY 7

7 SQLITE 7

8 WEB SERVICE VÀ SOAP 7

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 8

1 ĐẶC TẢ BÀI TOÁN 8

2 ĐẶC TẢ CHỨC NĂNG 8

2.1 Upload phone book 8

2.2 Revert phone book 9

2.3 Send contact 10

2.4 Reveive contact 11

2.5 Export contact tới SD Card 12

2.6 Import contact từ SD Card 13

2.7 Restore account 13

3 SƠ ĐỒ CLASS 14

3.1 Class UI 14

Trang 2

3.2 Class Webservice 14

3.3 Class Contact 15

3.4 Class ContactProvider 15

4 CƠ SỞ DỮ LIỆU 16

1 MỘT VÀI HÌNH ẢNH ỨNG DỤNG 19

2 DANH SÁCH CÁC LIÊN KẾT MÀN HÌNH MỨC 1&2 21

3 ĐÁNH GIÁ ỨNG DỤNG 21

4 HƯỚNG PHÁT TRIỂN TRONG TƯƠNG LAI 22

5 KẾT LUẬN 22

Trang 3

CƠ SỞ LÝ THUYẾT

1 MÁY ẢO DALVIK

Dalvik là máy ảo giúp các ứng dụng java chạy được trên các thiết bịđộng Android Nó chạy các ứng dụng đã được chuyển đổi thành một filethực thi Dalvik (dex) Định dạng phù hợp cho các hệ thống mà thường bịhạn chế về bộ nhớ và tốc độ xử lý

2 KIẾN TRÚC CỦA ANDROID

Hình 2.1 Cấu trúc stack hệ thống Android

Android dựa trên Linux phiên bản 2.6 cho hệ thống dịch vụ cốt lõi nhưsecurity, memory management, process management, network stack, anddriver model Kernel Linux hoạt động như một lớp trừu tượng hóa giữaphần cứng và phần còn lại của phần mềm stack

Trang 4

3 CÁC THÀNH PHẦN TRONG MỘT ANDROID PROJECT

3.1 AndroidManifest.xml

Khai báo các Activity, các permission,… nhằm giúp hệ thống có thểgiựa vào đó mà có thể quản lý được các thành phần và quản lý ứng dụngmột cách an toàn, tối ưu

3.2 File R.java

Là một file quản lý tài nguyên trong một ứng dụng Android File nàyđược quản lý bởi IDE và coder thường không cần phải thao tác trên filenày

4 CHU KỲ ỨNG DỤNG ANDROID

4.1 Activity Stack

Bên trong hệ thống các activity được quản lý như một activity stack.Khi một Activity mới được start, nó được đặt ở đỉnh của stack và trởthành activity đang chạy activity trước sẽ ở bên dưới activity mới và sẽkhông thấy trong suốt quá trình activity mới tồn tại

Nếu người dùng nhấn nút Back thì activity kết tiếp của stack sẽ di duyểnlên và trở thành active

Hình 2.2 Stack Activity

Trang 5

4.2 Các trạng thái của chu kỳ sống

Hình 2.3 Chu kỳ sống của Activity

Một Activity chủ yếu có 3 chu kỳ chính sau:

 Active hoặc running: Khi Activity là được chạy trên màn hình.Activity này tập trung vào những thao tác của người dùng trên ứngdụng

 Paused: Activity là được tạm dừng (paused) khi mất focus nhưngngười dùng vẫn trông thấy Có nghĩa là một Activity mới ở trên nónhưng không bao phủ đầy màn hình Một Activity tạm dừng là cònsống nhưng có thể bị kết thúc bởi hệ thống trong trường hợp thiếuvùng nhớ

 Stopped: Nếu nó hoàn toàn bao phủ bởi Activity khác Nó vẫn còntrạng thái và thông tin thành viên trong nó Người dùng không thấy

nó và thường bị loại bỏ trong trường hợp hệ thống cần vùng nhớcho tác vụ khác

Trang 6

5 CÁC THÀNH PHẦN GIAO DIỆN TRONG ANDROID

5.1 View

Trong một ứng dụng Android, giao diện người dùng được xây dựng từcác đối tượng View và ViewGroup Có nhiều kiểu View và ViewGroup.Mỗi một kiểu là một hậu duệ của class View và tất cả các kiểu đó đượcgọi là các Widget

Tất cả mọi widget đều có chung các thuộc tính cơ bản như là cách trìnhbày vị trí, background, kích thước, lề,… Tất cả những thuộc tính chungnày được thể hiện hết ở trong đối tượng View

Trong Android Platform, các screen luôn được bố trí theo một kiểu cấutrúc phân cấp như hình dưới Một screen là một tập hợp các Layout và cácwidget được bố trí có thứ tự Để thể hiện một screen thì trong hàmonCreate của mỗi Activity cần phải được gọi một hàm làsetContentView(R.layout.main); hàm này sẽ load giao diện từ file XMLlên để phân tích thành mã bytecode

Hình 2.4 Cách thức bố trí giao diện trong ứng dụng Android

5.2 View group

ViewGroup là các đối tượng giao diện giúp bố trí các đối tượng giaodiện khác trong nó theo một cách sắp xếp nào đó

Trang 7

5.3 Widget

Là khái niệm chỉ chung cho tất cả các đối tượng giao diện được sửdụng trong hệ thống Android Các đối tượng đó bao gồm: Button,ImageView, ImageButton, CheckBox,…

6 TELEPHONY

Telephony là một trong 4 thành phần chính của một hệ thống Android

Nó cho phép người lập trình có thể lấy các thông tin của hệ thống nhưthông tin SIM, thông tin thiết bị, thông tin mạng,… Ngoài ra, chúng tacũng có thể cài đặt các thông số cho thiết bị nếu các thông số đó có thểthay đổi được Tất cả những điều đó được quản lý bởi một classTelephonyManager trong Android

7 SQLITE

SQLite là một dạng CSDL tương tự như Mysql, PostgreSQL Đặc

điểm của SQLite là gọn, nhẹ, đơn giản Vì vậy, nó được ứng dụng nhiều

trong các thiết bị có kích thước bộ nhớ nhỏ

8 WEB SERVICE VÀ SOAP

Webservice là một dịch vụ cung cấp cơ chế triệu gọi các đối tượng từ

xa thông qua giao thức HTTP cùng với cơ chế truyền tải định dạng đốitượng theo công nghệ XML Chính vì sử dụng giao thức HTTP của Webnên giờ đây các lời gọi trở nên đơn giản và thông qua được các rào cản vềtường lửa Để đảm bảo điều này, một giao thức mới là SOAP (SimpleObject Access Protocol) ra đời để hỗ trợ cho Web services SOAP đượcđịnh nghĩa dựa trên giao thức chuẩn HTTP, SOAP cho phép dữ liệuchuyển đi bằng HTTP và định dạng theo chuẩn XML Các lời gọi hàmtham số truyền hàm, dữ liệu trả về từ hàm, tất cả đều được chuyển sangdạng XML và có thể dễ dàng xử lý bởi tất cả các ngôn ngữ Một thế mạnhkhác đó là nếu các đối tượng phân tán xây dựng trên mô hình Webservices sẽ có thể triệu gọi lẫn nhau, bất chấp đối tượng đó được viết trênngôn ngữ Java của Sun hay NET của Microsoft Hiện tại,

SOAP được coi là một sự thay đổi lớn kể từ khi COM, RMI, CORBA

ra đời

Trang 8

CHƯƠNG 1: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

1 ĐẶC TẢ BÀI TOÁN

Xây dựng ứng dụng Phone Book Safe Manager dùng để quản lýcontact trong điện thoại Android Cho phép người dùng lưu trữ phonebook của họ lên tài khoản trên server và có thể lấy lại ở một máyAndroid khác hoặc một lúc khác Đồng thời cho phép gửi và nhậncontact, thông báo contact mới, lưu trữ contact vào thẻ nhớ, và nhiềuchức năng tiện ích khác…

2 ĐẶC TẢ CHỨC NĂNG

2.1 Upload phone book

Hình 2.5 Biểu đồ tuần tự chức năng upload phone book

Bước 1,2 : Đọc tất cả các Contact trong phone book và lưu vào một listBước 3: Chuyển đổi Contact list thành XML

Bước 4, 5: Triệu gọi hàm BackupConatct trên Webservice và truyền vàocác tham số là các thông tin upload, UserID, hàm này sẽ thực hiện chèn

dữ liệu vào CSDL tương ứng với tài khoản của người dùng

Trang 9

Bước 6, 7: Trả về kết quả là đã upload thành công hay không.

2.2 Revert phone book

Hình 2.6 Biểu đồ tuần tự chức năng khôi phục phone book

Bước 1,2 : Đọc tất cả các Contact trong phone book và lưu vào một listBước 3: Chuyển đổi Contact list thành XML

Bước 4, 5: Triệu gọi hàm BackupConatct trên Webservice và truyền vàocác tham số là các thông tin upload, UserID, hàm này sẽ thực hiện chèn

dữ liệu vào CSDL tương ứng với tài khoản của người dùng

Bước 6, 7: Trả về kết quả là đã upload thành công hay không

Trang 10

2.3 Send contact

Hình 2.7 Biểu đồ tuần tự chức năng send contact

Bước 1,2,3,4: Đọc các thông tin đầy đủ của các Contact đã được chọn vàtrả về một Contact list

Bước 5,6: Convert Contact list thành nội dung XML và triệu gọi từ xahàm SendContact từ web service Đồng thời truyền vào các tham số là nộidung cần gửi và các thông tin cần thiết như người gửi, người nhận, ngàygửi,…

Bước 7: Add nội dung gửi và các thông tin gửi vào một table Từ tablenày tất cả các người dùng sẽ truy cập vào và lấy các dữ liệu của họ

Bước 8,9: Trả về một thông điệp thông báo cho người dùng biết là đã gửiđược hay chưa cũng như các trường hợp lỗi

Trang 11

2.4 Reveive contact

Hình 2.8 Quá trình nhận Contact mới

Bước 1: Người dùng chọn contact cần add trên màn hình chứa danh sáchcác contact mới ID contact được chọn sẽ được gửi lên webservice yêucầu lấy về thông tin đầy đủ của contact đó

Bước 2: Thông tin đầy của của contact được trả về

Bước 3: Kiểm tra xem contact đã tồn tại trong phone book hay chưa

Bước 4: Thêm vào phone book nếu như chưa tồn tại Ngược lại thì khôngthêm vào

Trang 12

2.5 Export contact tới SD Card

Hình 2.9 Quá trình xuất Contact ra SD Card

Bước 1: Gửi các contact ID đã được chọn bởi người dùng cho đối tượngContactProvider yêu cầu đọc những contact với ID đó lên

Bước 2, 3, 4: Đọc đầy đủ thông tin các contact đã chọn và trả về một danhsách

Bước 5: Chuyển danh sách các contact vừa được trả về sang nội dungXML

Bước 6, 7: Thực hiện ghi vào thẻ nhớ và thông báo cho người dùng biết

Trang 13

2.6 Import contact từ SD Card

Hình 2.10 Quá trình nhận Contact từ SD Card

Bước 1, 2: Đọc file từ SD Card

Bước 3, 4: Convert nội dung XML đã được đọc từ file thành Contact list

và ghi các Contact đó vào phone book trong điện thoại Android

2.7 Restore account

Hình 2.11 Quá trình khôi phục tài khoản

Bước 1: Người dùng nhập địa chỉ email dự phòng đã được nhập trong quátrình tạo tài khoản trước đây

Trang 14

Bước 2: Kiểm tra biểu thức email có chính xác hay không Bước nàynhằm mục đích giảm thời gian kiểm tra trên server nếu như email khôngchính xác.

Bước 3: Triệu gọi từ xa hàm RestoreAccount trên web service

Bước 4: Thực hiện truy vấn để lấy về thông tin tài khoản trong CSDL.Bước 5, 6: Trả thông tin tài khoản về Client

Bước 7: Client sẽ thực hiện gửi thông tin tài khoản vào email dự phòngcủa người dùng Người dùng sẽ truy cập email dự phòng của họ để xemlại thông tin tài khoản và có thể đăng nhập lại để đổi thông tin tài khoản

3 SƠ ĐỒ CLASS

3.1 Class UI

Hình 2.12 Sơ đồ class mối quan hệ giữa các Acitivity

- Activity là một class thuộc hệ thống Android

- MyActivity kế thừa từ class Activity để cụ thể hoá thêm một sốphương thức mà tất cả các sub class đều cần đến

3.2 Class Webservice

Class Webservice được dùng để kết nối và trao đổi dữ liệu với webservice

Trang 15

Hình 2.13 3.3 Class Contact

Trang 16

4 CƠ SỞ DỮ LIỆU

Hình 2.16 Biểu đồ CSDL trên web server

 Bảng ACCOUNTS:

Được dùng để lưu trữ thông tin tài khoản người dùng

Thuộc tính của các field như sau:

Field Name Type

USERNAME nvarchar(50)PASSWORD nvarchar(50)EMAIL nvarchar(100)USERID bigint, primary key

Bảng 2.1 Thuộc tính các trường thuộc bảng Account

Trang 17

TIME nvarchar(30)

VERSION_ID bigint, primary key

Bảng 2.2 Thuộc tính các trường thuộc bảng BACKUP_CONTACT

 Bảng MYUSERNAME

Được dùng để lưu trữ tên tài khoản của những người bạn có sử dụng hệthống phone book safe Cũng giống như khi chat yahoo hoặc skype thìđều có một contact list nhằm giúp bạn dễ dàng quản lý và tìm kiếm khicần

Trang 18

DEMO ỨNG DỤNG

1 MỘT VÀI HÌNH ẢNH ỨNG DỤNG

Hình 2.17 Màn hình Login Hình 2.18 Màn hình Phone book

Hình 2.19 Add & Edit Hình 2.20 Options menu

Trang 19

Hình 2.21 Ghi chú trước khi

upload phone book

Hình 2.22 Tự động báo Contact

mới

Trang 20

2 DANH SÁCH CÁC LIÊN KẾT MÀN HÌNH MỨC 1&2

Export Contact to SDCard 100%

Import Contact from SDCard 100%

màn hình view contact

màn hình login

màn hình danh sách các contact

dialog nhập chú

thích để upload

phone book

màn hình danh sách phonebook

đã upload

màn hình quản

lý danh sách tài khoản dialog change

password

màn hình danh sách tài khoản ứng dụng

dialog tạo tài

khoản mới

dialog khôi phục tài khoản

dialog thông báo contact mới

màn hình nhận contact mới

progressdialog export contact

màn hình edit contact

panel tìm kiếm

contact

Trang 21

Receive Contact 100%

Create new account 100%

Friends Android manager 100%

Các issue và bug chưa giải quyết

 Chưa upload được hình ảnh lên server (issue)

 ListView cuộn chưa smooth (issue)

4 HƯỚNG PHÁT TRIỂN TRONG TƯƠNG LAI

 Chức năng gửi và nhận tin nhắn thông qua wifi

Chức năng này sẽ được phát triển trong tương lai nhằm mục đích giúpnhững người thường xuyên có kết nối wifi có thể gửi tin nhắn mà khôngmất tiền Tin nhắn đến sẽ được thông báo bằng dialog ngay trên màn hìnhdesktop và kể cả khi dang sử dụng ứng dụng khác

 Chức năng gửi thư thoại thông qua wifi

Chức năng này sẽ tận dụng chức năng thu âm được trang bị trong cácmáy Android Dữ liệu sẽ được đóng gói và truyền lên tài khoản ngườinhận

 Chức năng huỷ dữ liệu

Khi bị mất điện thoại thì điều mà người dùng lo lắng nhất chính lànhững dữ liệu cá nhân trong đó Chức năng này sẽ tự động huỷ các dữ liệuđược chỉ định sẵn trong thẻ nhớ hoặc bộ nhớ máy khi nhận được yêu cầuthông qua tin nhắn hoặc wifi Ngoài ra người dùng còn có thể thiết lập cơchế huỷ dữ liệu tự động khi không được thực hiện một sự kiện nào đótrong một khoảng thời gian nào đó

5 KẾT LUẬN

Sau khi thực hiện xong project này em đã nắm bắt được qui trình làmmột dự án phần mềm trên mobile nói chung và Android nói riêng đồngthời hiểu thêm được nhiều kiến thức về Android và các công nghệ liênquan như là XML, XStream, Web service và SOAP,…

Ngày đăng: 25/08/2012, 14:01

HÌNH ẢNH LIÊN QUAN

Hình  2.1 Cấu trúc stack hệ thống Android - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.1 Cấu trúc stack hệ thống Android (Trang 3)
Hình  2.2 Stack Activity - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.2 Stack Activity (Trang 4)
Hình  2.3 Chu kỳ sống của Activity - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.3 Chu kỳ sống của Activity (Trang 5)
Hình  2.4 Cách thức bố trí giao diện trong ứng dụng Android 5.2. View group - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.4 Cách thức bố trí giao diện trong ứng dụng Android 5.2. View group (Trang 6)
Hình  2.5 Biểu đồ tuần tự chức năng upload phone book - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.5 Biểu đồ tuần tự chức năng upload phone book (Trang 8)
Hình  2.6 Biểu đồ tuần tự chức năng khôi phục phone book - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.6 Biểu đồ tuần tự chức năng khôi phục phone book (Trang 9)
Hình  2.7 Biểu đồ tuần tự chức năng send contact - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.7 Biểu đồ tuần tự chức năng send contact (Trang 10)
Hình  2.8 Quá trình nhận Contact mới - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.8 Quá trình nhận Contact mới (Trang 11)
Hình  2.9 Quá trình xuất Contact ra SD Card - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.9 Quá trình xuất Contact ra SD Card (Trang 12)
Hình  2.10 Quá trình nhận Contact từ SD Card - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.10 Quá trình nhận Contact từ SD Card (Trang 13)
Hình  2.13 3.3. Class Contact - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.13 3.3. Class Contact (Trang 15)
Hình  2.16 Biểu đồ CSDL trên web server - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.16 Biểu đồ CSDL trên web server (Trang 16)
Bảng 2.3 Thuộc tính các trường thuộc bảng MYUSERNAME - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
Bảng 2.3 Thuộc tính các trường thuộc bảng MYUSERNAME (Trang 17)
Hình  2.21 Ghi chú trước khi - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.21 Ghi chú trước khi (Trang 19)
Hình  2.22 Tự động báo Contact - ỨNG DỤNG PHẦN MỀM TRÊN MOBILE.doc
nh 2.22 Tự động báo Contact (Trang 19)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w