Tìm hiểu và lập trình trên hệ điều hành Android

41 407 0
Tìm hiểu và lập trình trên hệ điều hành Android

Đ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

Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 1 B GIÁO DC VÀ ÀO TO TRNG I HC M THÀNH PH H CHÍ MINH KHOA CÔNG NGH THÔNG TIN  ÁN MÔN HC  TÀI: T T Ì Ì M M H H I I   U U V V À À L L   P P T T R R Ì Ì N N H H T T R R Ê Ê N N H H     I I   U U H H À À N N H H A A N N D D R R O O I I D D . . Giáo viên hng dn : Thc s H Quang Khi Thi gian thc hin : 21.11.2011 – 15.02.2012 Sinh viên thc hin : Trn ng Khoa – MSSV: 0851010134 T: 0979 890 254 Nguyn Minh Tâm – MSSV: 0851010227 T: 0168 2952 264 Lp: TH08B2 Khóa: 2008 – 2012 THÁNG 02 NM 2012 Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 2 LI CM N Chúng em xin chân thành cm n Ban Giám Hiu và các Thy cô Trng i Hc M Thành Ph H Chí Minh đã ch dn chúng em trong nhng tháng nm hc tp ti trng, cng nh là cung cp nhng kin thc cn thit trong khong thi gian chúng em thc hin đ án này. Trong quá trình thc hin đ án môn hc chúng em xin chân thành cm n đc bit đn th y Thc s H Quang Khi, giáo viên hng dn, đã tn tình ging dy và giúp đ chúng em trong sut quá trình thc hin và hoàn thành đ án môn hc. Khi hoàn thành đc đ án này chúng em đã tri qua khong thi gian làm vic nhóm cùng vi nhau tht hu ích. Tht s, đây là mt khong thi gian tuy ngn, nhng đ đ chúng em th hin tinh thn làm vic nhóm, vn dng nhng kin thc đã h c đ hoàn thành công vic mt cách tt nht. Tuy nhiên, do kh nng còn hn ch và thi gian có hn, chc chn trong tp đ án môn hc không tránh khi thiu sót, mong đc s đng viên, thông cm và đóng góp ý kin ca quý Thy cô và các bn đ tp đ án hoàn chnh hn. Chúng em xin chân thành cm n. Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 3 MC LC MC TIÊU VÀ YÊU CU 6  1. Mc tiêu chính: 6 a. Mc tiêu ca ging viên đt ra cho chúng em là: 6 b. Bên cnh đó mc tiêu ca nhóm chúng em đt ra là: 6 2. Yêu cu sinh viên: 6 GII THIU  ÁN 7 NI DUNG BÁO CÁO 8 I. TÌM HIU H IU HÀNH ANDROID: 8 1. S phát trin ng dng trên di đng: 8 2. Gii thiu chung v h điu hành Android: 8 a. Khái nim: 8 b. S phát trin ca Android: 8 c. Các ng dng Android c bn: 9 d. c đim ca b phát trin ng dng Android: 9 3. Kin trúc h điu hành Android: 10 a. Tng ht nhân Linux (Linux Kernel layer): 10 b. Tng Libraries và android runtime: 10 c. T ng Application Framework: 11 d. Tng Application: 11 4. Cài đt môi trng phát trin Android: 11 a. Phn mm h tr: 11 b. Hng dn cài đt: 11 II. NGÔN NG LP TRÌNH JAVA 20 1. Gii thiu Java: 20 2. Lch s hình thành ngôn ng Java: 20 3. Mt s đc đim ni bt ca ngôn ng lp trình Java: 20 a. Máy o Java ( Java Virtual Machine): 20 b. Thông dch: 21 c. c lp nn: 21 d. Hng đi tng: 21 e. a nhim – đa lung ( Multi Tasking – Multi Threading): 21 f. Kh chuyn: 21 g. H tr mnh cho vic phát trin ng dng: 21 III. NG DNG CALCULATOR 22 1. Mô t chc nng ng dng: 22 a. X lý biu thc: 22 b. Nhp hàm: 22 c. Các phép tính c bn: Cng +, tr -, nhân *, chia ÷ 22 d. Các phép tính vi các hàm: x 2 , n!, sin, cos, tan, sqrt. 22 e. Có th dùng degree hay radians cho các hàm lng giác (trigonometry) 22 f. Lu và gi li ni dung ca biu thc tính toán c (history) 22 g. Biu th kt qu: 22 2. Ý tng gii quyt bài toán: 22 3. Ý tng thut toán ký pháp nghch đo Ba Lan 23 a. Ý tng: 23 b. Hin thc thut toán: 23 4. Demo ng dng Calcaulator: 26 IV. KT QU 38 1. Chng trình ng dng “calculator”: 38 a. Kt qu đt đc: 38 Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 4 b. Hn ch ca chng trình: 38 2. Kh nng làm vic 38 a. Tp th nhóm 38 b. Cá nhân: 38 V. HNG PHÁT TRIN THÊM 39 VI. KT LUN 40 VII. TÀI LIU THAM KHO 41 Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 5 NHN XÉT CA GIÁO VIÊN HNG DN Ngày……tháng……nm…… Ký tên Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 6 MC TIÊU VÀ YÊU CU Sau thi gian hc tp và trau di kin thc thì gi đây là giai đon tt nht mà mi thành viên trong nhóm chúng em có th áp dng nhng kin thc đã hc đ vn dng vào đ tài mà trng đã giao cho chúng em làm. ây cng là giai đon đ thy rõ kh nng tip thu, nm vng kin thc ca mình  mc đ nào.  tài: Tìm hi u và lp trình ng dng trên h điu hành Android. 1. Mc tiêu chính: Phân tích và xây dng thành công phn mm ng dng máy tính khoa hc cho đin thoi cm tay thông minh chy trên nn gi lp Android SDK. a. Mc tiêu ca ging viên đt ra cho chúng em là: - Làm quen vi cách thc làm vic theo nhóm. - Nm vng và lp trình thành tho vi Java trên nn Android. - Dùng Java trên nn Android thit k “Calculator”. b. Bên cnh đó mc tiêu ca nhóm chúng em đt ra là: - T đ tài này có th m rng ra và ng dng cho các đ tài khác có liên quan. 2. Yêu cu sinh viên: - Hc môn lp trình hng đi tng, cu trúc d liu, và gii tích. - Chu khó hc hi và tham kho tài liu. - Kh nng làm vic nhóm. Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 7 GII THIU  ÁN Gn đây đin thoi cm tay thông minh đã tr thành mt vt hu nh “cn phi có” trong cuc sng hng ngày ca gii làm vic “trí thc”. Vit phn mm tin ích nâng cao giá tr s dng cho chúng cng tr nên mt trào lu cho các công ty phát trin phn mm, các gii lp trình viên chuyên nghip cng nh không chuyên. c bit là nh ng ng dng cho máy chy trên h điu hành Android. Phn mm máy tính bao gi cng đc cài đt sn trong bt c đin thoi cm tay nhng ch dng li  mc đ c bn nh cng tr nhân chia, trong khi đó mc nhu cu s dng ca gii làm vic “trí thc” cao hn,  mc đ ca máy tính khoa hc. L y tiêu chí là đáp ng đc nhu cu k trên, nhóm chúng em xin đng ký, tìm hiu và lp trình ng dng “máy tính khoa hc” dành cho h điu hành Android.  tài “Tìm hiu và lp trình ng dng trên h điu hành Android” nhm nâng cao k nng lp trình, cng nh phân tích, thit k và xây dng mt ng dng thc tin cho sinh viên t nhng yêu cu đc phân tích nh trên. Xây dng đc mt phn mm ng dng nh mt máy tính khoa hc thc th s không đn gin. Cho nên mc đ yêu cu ca đ tài ch bao gm nhng phép toán và hàm đn gin. ng thi ng dng đc gii hn ch cho máy đin thoi cm tay thông minh do màn hình (ln, cm ng, …) ca chúng s cho phép thit k và xây dng mt giao din phc tp đa nng, và b x lý c a chúng đ mnh đ tính toán bài toán phc tp nhm đáp ng đc yêu cu ca đ tài. Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 8 NI DUNG BÁO CÁO I. TÌM HIU H IU HÀNH ANDROID: 1. S phát trin ng dng trên di đng: − Symbian: + Nhà phát trin: Nokia + Ngôn ng lp trình: Symbian C++ + Thit b h tr: Nokia, Sony Ericsson, Samsung − J2ME: + Nhà phát trin: Sun MicroSystems + Ngôn ng lp trình: Java, MIDlet + Thit b h tr: c h tr t nhiu nhà sn xut đin thoi − Windows Phone: + Nhà phát trin: Microsoft + Ngôn ng lp trình: C#, VB + Thit b h tr: HTC, Samsung, LG, Dell, Nokia − webOS (Palm OS) + Nhà phát trin: Palm, HP + Ngôn ng lp trình: C/C++ + Thit b h tr: Palm, HP − iOS + Nhà phát trin: Apple + Ngôn ng lp trình: Objective C + Thit b h tr: iPhone − Android + Nhà phát trin: Google + Ngôn ng lp trình: Java + Thit b h tr: HTC, Samsung, LG, Sony Ericsson, Acer, Dell… 2. Gii thiu chung v h điu hành Android: a. Khái nim: - Android là mt h điu hành dành cho thit b di đng nh smartphone, tablet hay netbook. Android do Google phát trin da trên nn tng Linux kernel và các phn mm mã ngun m. Android là h điu hành m mã ngun chính duy nht. - Android bao gm: + H điu hành m cho các thit b di đng. + Nn tng phát trin các ng dng di đng. + Các thit b di đng chy HH Android và các ng dng c a nó. b. S phát trin ca Android: - Ban đu nn tng này đc phát trin bi Android Inc. Android là mt h điu hành di đng da trên nn tng linux phiên bn 2.6 dành cho các dòng đin thoi SmartPhone. u tiên, đc ra đi bi công ty liên hp Android, sau đó Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 9 đc Google mua li và phát trin t nm 2005 và tr thành mt h điu hành di đng mã ngun m, min phí, mnh m và đc a chung cao trên th gii. - Android đc phát trin nhm cnh tranh vi các h điu hành di đng khác nh iOS (Apple), BlackBerry OS, Windows Mobile (Microsoft), Symbian (Nokia), Samsung (Bada), WebOS (Palm) Tính đn thi đim này, Android đã tr thành nn tng di đng tng trng nhanh nh t th gii. - H điu hành android mt h điu hành rt mnh mnh, có bo mt cao, h tr đc nhiu công ngh tiên tin nh 3G, GPS, EDGE, Wifi tng thích vi nhiu phn cng, h tr nhiu loi b nhp d liu nh keyboard, touch và trackball. Android là h điu hành di đng nên có kh nng kt ni cao vi các mng không dây. H tr công ngh OpenGL nên có kh nng chi các phng tin media, hot hình cng nh trình din các kh nng đ ha khác cc tt, là tin đ đ phát trin các ng dng có giao din phc tp chng hn nh là các trò chi. - Nm 2008, h điu hành android đã chính thc m toàn b mã ngun, điu đó cho phépcác hãng đin thoi có th đem mã ngun v  tùy chnh, thit k li sao cho phù hp vi mi mu mã đin thoi ca h và điu quan trng na là h điu hành m này hoàn toàn min phí, không phi tr tin nên giúp h tit kim khá ln chi phí phát trin h điu hành. Nhng điu đó là cc k tt không ch đi vi các hãng sn xut đin tho i nh mà ngay c vi nhng hãng ln nh Samsung, HTC - Vi các nhà phát trin ng dng (developers), vic h điu hành android đc s dng ph bin đng ngha vi vic h có th thoi mái phát trin ng dng trên nn android vi s tin tng là ng dng đó s có th chy đc ngay trên nhiu dòng đin thoi ca các hãngkhác nhau. H ít phi quan tâm là đang phát trin cho đin thoi nào, phiên bn bao nhiêu vìnn tng android là chung cho nhiu dòng máy, máy o Java đã chu trách nhim thc thinhng ng dng phù hp vi mi dòng đin thoi mà nó đang chy. Tt c các chng trình ng dng đc vit bng ngôn ng Java kt hp vi XML nên có kh nng kh chuyn cao. c. Các ng dng Android c bn: - Duyt mail. - Qun lý SMS. - Qun lý thông tin ngi dùng PIM. - Trình duyt web. - Chng trình chi nhc, hin th hình nh. d. c đim ca b phát trin ng dng Android: - Hoàn toàn min phí. - H tr các thit b có Wifi. - H tr GPS. - Th vin s dng Bluetooth. - Trình duyt web HTML 5. - H tr phát trin ng dng v bn đ. - Th vin âm thanh x lý nhiu đnh dng. Tìm hiu và lp trình ng dng trên h điu hành Android GVHD: Th.s H Quang Khi Sinh viên: Trn ng Khoa – Nguyn Minh Tâm Khoa: Công Ngh Thông Tin Trang 10 - Th vin đ ha 2D, 3D. 3. Kin trúc h điu hành Android: H điu hành android có 4 tng t di lên trên là tng ht nhân Linux (phiên bn 2.6), tng Tng Libraries và Android runtime, Tng Application Framework và trên cùng là tngApplication. Kin trúc h điu hành Android a. Tng ht nhân Linux (Linux Kernel layer): H điu hành android đc phát trn da trên ht nhân linux, c th là ht nhân linux phiên bn2.6, điu đó đc th hin  lp di cùng này. Tt c mi hot đng ca đin thoi mun thihành đc thì đu đc thc hin  mc cp thp  lp này bao gm qun lý b nh (memorymanagement), giao tip vi ph n cng (driver model), thc hin bo mt (security), qun lý tin trình (process). b. Tng Libraries và android runtime: - Libraries: Phn này có nhiu th vin đc vit bng C/C++ đ các phn mm có th s dng, các th vin đó đc tp hp thành mt s nhóm nh : + Th vin h thng (System C library): th vin da trên chun C, đc s dng ch bi h điu hành. + Th vin Media (Media Libraries): Có nhiu code đ h tr vi c phát và ghi các loi đnh dng âm thanh, hình nh, video thông dng. + Th vin SQLite : H c s d liu đ các ng dng có th s dng. - Android runtime: Phn này cha các th vin mà mt chng trình vit bng ngôn ng Java có thhot đng. Phn này có 2 b phn tng t nh mô hình chy Java trên máy tính thng. Th nht là các th vin lõi (Core Library), cha các lp nh JAVA IO, Collections, File Access. Th hai là mt máy o java (Dalvik Virtual Machine). [...]... Trang 33 Tìm hi u và l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i Ch a g i History Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm Khoa: Công Ngh Thông Tin Trang 34 Tìm hi u và l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i Nh n Button Up l n 1 Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm Khoa: Công Ngh Thông Tin Trang 35 Tìm hi u và l p trình ng d ng trên h i u hành Android. .. Nguy n Minh Tâm Khoa: Công Ngh Thông Tin Trang 14 Tìm hi u và l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i Sau khi t i v b n b m chu t ph i vào file v a t i và bung nén nh hình: ây mình dùng Sinh viên: Tr n C trong máy ng Khoa – Nguy n Minh Tâm bung nén : Khoa: Công Ngh Thông Tin Trang 15 Tìm hi u và l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i Sau khi bung nén... l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i Ch y Eclipse ch n Tab Windows -> Preferences -> Android Nh n nút Browse và ch nh ng d n t i th m c c a Android SDK b n t i lúc tr c Ch n Apply -> OK Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm Khoa: Công Ngh Thông Tin Trang 19 Tìm hi u và l p trình ng d ng trên h II NGÔN NG i u hành Android GVHD: Th.s H Quang Kh i L P TRÌNH JAVA 1 Gi i... Thông Tin Trang 26 Tìm hi u và l p trình ng d ng trên h i u hành Android Tính toán c ng tr nhân chia GVHD: Th.s H Quang Kh i n gi n K t qu tr ra ki u double có làm tròn 3 ch s VD: 10/3=3,33333333333->10/3=3.333 Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm Khoa: Công Ngh Thông Tin Trang 27 Tìm hi u và l p trình ng d ng trên h i u hành Android Làm tròn 3 ch s GVHD: Th.s H Quang Kh i Ch ng trình còn cho phép... tính toán các hàm sin, cos, tan v i hai và Degrees Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm n v Radians Khoa: Công Ngh Thông Tin Trang 28 Tìm hi u và l p trình ng d ng trên h i u hành Android Tính sin(90) Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm GVHD: Th.s H Quang Kh i n v Degreees Khoa: Công Ngh Thông Tin Trang 29 Tìm hi u và l p trình ng d ng trên h i u hành Android Tính sin(90) GVHD: Th.s H Quang... Install -> Ch ch ng trình cài t xong Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm Khoa: Công Ngh Thông Tin Trang 17 Tìm hi u và l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i + Tích h p Android SDK vào Eclipse: Kh i ch y Eclipse, vào Help -> Install new softwares Ch n Add, Name” tên b n mu n và Location gõ vào a ch t i v ADT: HTML Code: https://dl-ssl.google.com /android/ eclipse/ ho... Tin Trang 31 Tìm hi u và l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i L u xu ng c s d li u Và xóa m t bi u th c kh i History(n u có)(Button M-) Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm Khoa: Công Ngh Thông Tin Trang 32 Tìm hi u và l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i Xóa kh i c s d li u xem History ta dung 2 Button Up và Down Sinh viên: Tr n ng Khoa... thành mã máy t ng ng SunMicrosystem ch u trách nhi m phát tri n các máy o Java ch y trên các h i u hành trên các ki n trúc CPU khác nhau b Thông d ch: Java là m t ngôn ng l p trình v a biên d ch v a thông d ch Ch ng trình ngu n vi t b ng ngôn ng l p trình Java có uôi *.java u tiên c biên d ch thành t p tin có uôi *.class và sau ó s c trình thông d ch thông d ch thành mã máy c c l p n n: M t ch ng trình. .. tri n Android: a Ph n m m h tr : l p trình Android thì m i b SDK c a Google là không , b n còn c n tích h p nó vào m t IDE nh Eclipse, bên c nh ó còn có Netbeans thì plugin cho Android v n ch a hoàn thi n SDK Android Emulator là m t ti n ích mi n phí dành cho Windows, Mac và Linux gi l p Android ngay trên máy tính Nó c Google thi t k các nhà phát tri n có th th nghi m các ng d ng c a mình trên Android. .. http://www.oracle.com/technetwork/java/javase/downloads/index.html + Eclipse 3.7.1 http://www.eclipse.org/downloads/ + Android SDK http://developer .android. com/sdk/index.html + Android Development Toll (ADT) http://dl.google.com /android/ ADT-0.9.7.zip Sinh viên: Tr n ng Khoa – Nguy n Minh Tâm Khoa: Công Ngh Thông Tin Trang 11 Tìm hi u và l p trình ng d ng trên h i u hành Android GVHD: Th.s H Quang Kh i + Android Platforms Các b c cài t: + Cài t JDK: u tiên b n . cu k trên, nhóm chúng em xin đng ký, tìm hiu và lp trình ng dng “máy tính khoa hc” dành cho h điu hành Android.  tài Tìm hiu và lp trình ng dng trên h điu hành Android . + Android SDK http://developer .android. com/sdk/index.html + Android Development Toll (ADT) http://dl.google.com /android/ ADT-0.9.7.zip Tìm hiu và lp trình ng dng trên h điu hành Android. h điu hành Android: H điu hành android có 4 tng t di lên trên là tng ht nhân Linux (phiên bn 2.6), tng Tng Libraries và Android runtime, Tng Application Framework và trên cùng

Ngày đăng: 12/05/2015, 21:06

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan