Câu 1: Giới thiệu sơ qua về 3 nền tảng di động phổ biến hiện nay Android, iOS, Windows Phone. Câu 2: Lịch sử phát triển của Android ? Trình bày các phiên bản của Android đã được phát hành. Câu 3: Kiến trúc nền tảng Android gồm mấy tầng? là những tầng nào? Nêu vai trò và chức năng của từng tầng? Câu 4: Google Play Store là gì ? Làm thế nào để tải ứng dụng (miễn phí và trả phí) trên Google Play Store về điện thoại ?
Ôn tập môn Lập trình trên thiết bị di động – CNPM K9 Phần Lý thuyết Câu 1: Giới thiệu sơ qua về 3 nền tảng di động phổ biến hiện nay Android, iOS, Windows Phone. !"#$%&'()*+, -./*-, 0-12 3 4 25")'(-6*.748 ! '9: Tên hệ điều hành trên điện thoại Ưu điểm Nhược điểm Android (Google) ;<( * ;=> ;?'@/336- ;<A4B$.3C D@E3E3 B ;F!3GH3I , 4G$33 B ,* 2 J $ ! ;KL 4B M N * O -, )'(LL, 7 ! ;P'' * , / 7 E iOS (Apple) ;Q' , R3- ;FE ;SD'@4(336 ;& G $3- , ) '(3-64B 7 ;< E3J94B<#G,* ,TU)B 3E V& ;W ,0-#X$) 4J9:'Y3 D'@-3M4 Windows Phone (Microsoft) ;<J94BH4. #Z'@'!4@"[#\I ;Q'[9 ;/44B4T 3]X ;^_$'> 3E#Z'@ ;`_,aH1M !#Z'@b'c#[I ;^O$3'd'3D, $3'd)#Z'@G ;Q'[,R3 ;^D'@E#2' e^3D'@, f Câu 2: Lịch sử phát triển của Android ? Trình bày các phiên bản của Android đã được phát hành. Lịch sử phát triển của Android: ;P''9'9'23g%h' ']&i% ;KC)13P''-#*Q43 0MTgjjk419'9NJ1->3- X49 B% ;P''@30-/E3EM/C'' L*09LA-47!A-/B% ;WTgjjl-''ND19NJ% ;&/CE3E-.''3g%g9Ag%m Bnkjo%-3B$g%83hpmgpgjmj4 3@ E3E% Các phiên bản của Android : - Android 1.0( 23-11-2008) HTC Dream là smartphone dùng Android đầu tiên với kiểu dáng trượt kèm bàn phím vật lý. Chưa được Google định hình tên mã (trước đó tên gọi Astro Boy hay Bender). Android 1.0 rất nguyên sơ, tích hợp khả năng đồng bộ dữ liệu với các dịch vụ trực tuyến, một trình phát media, hỗ trợ Wi-Fi và Bluetooth, thanh trạng thái hiển thị các thông báo ứng dụng và một ứng dụng chụp ảnh (camera). - Android 1.1(9-2-2009) Android 1.1 đã có tên Petit Four. Bổ sung một số chức năng mới cho Google Maps hiển thị chi tiết hơn, bàn phím ảo gọi điện thoại đã có thể hiển thị hoặc ẩn khi gọi. Chương trình SMS cho phép người dùng lưu tập tin đính kèm. Android 1.1 sửa một số lỗi trong Android 1.0. - Android 1.5(30-4-2009)Cupcake Cupcake, tên mã đầu tiên áp dụng cho phiên bản Android. Cupcake mang nhiều tính năng mới như bàn phím ảo có khả năng dự đoán từ đang gõ, từ điển từ ngữ do người dùng đặt ra, hỗ trợ widget trên giao diện chủ, quay phim và phát lại video clip, lược sử thời gian cuộc gọi, chế độ tự động xoay màn hình theo hướng sử dụng (screen rotation). Trình duyệt web trong Cupcake có thêm khả năng sao chép/ dán (copy/paste).cho phép người dùng hiển thị hình ảnh trong danh bạ. - Android 1.6(30-9-2009)Donut Donut khắc phục các chức năng "lỏng lẻo" trong Cupcake, mở rộng chức năng tìm kiếm bằng giọng nói và ký tự đến bookmark và danh bạ. Android Market trở thành "chợ đầu mối" để người dùng tìm kiếm và xem các ứng dụng Android. Ứng dụng chụp ảnh và quay phim trong Donut nhanh hơn. Hệ điều hành hỗ trợ màn hình có độ phân giải lớn hơn, hướng đến các thế hệ smartphone màn hình lớn. - Android 2.0(26-10-2009) Eclair Google tung ra Eclair, phiên bản được nhận định là "bước đi lớn" của hệ điều hành này. Eclair cải tiến rất nhiều, từ giao diện đến ứng dụng bên trong hệ thống. Ứng dụng chụp ảnh tăng cường thêm chức năng zoom số (phóng to), cân bằng trắng, hỗ trợ đèn flash và các hiệu ứng màu sắc. Hệ thống hoạt động ổn định hơn, cải thiện khả năng xử lý, hỗ trợ kết nối Bluetooth tốt hơn, đặc biệt tùy chọn đồng bộ nhiều tài khoản. Một điểm thuận tiện được đánh giá cao lúc bấy giờ là giao diện danh bạ cho phép nhấn chọn vào một ảnh danh bạ để gọi, nhắn tin hay email đến họ. Eclair là phiên bản Android đầu tiên hỗ trợ ảnh nền động (live wallpaper) dù tùy chọn này tiêu tốn khá nhiều pin. - Android 2.2(20-5-2010) Froyo mang Adobe Flash đến Android, kéo theo hàng loạt ứng dụng và game trên nền Flash. Người dùng có thể xem video clip nền Flash như YouTube và "ra lệnh" thực hiện cuộc gọi qua Bluetooth. Là thiết bị phát sóng Wi-Fi từ kết nối 3G. được sử dụng rất phổ biến đến ngày nay. Lần đầu tiên Android cho phép cài đặt ứng dụng (app) lên thẻ nhớ SD thay vì mặc định cài ngay vào bộ nhớ trong của thiết bị. Điểm "đầu tiên" nữa trong Froyo bao gồm mật khẩu đã hỗ trợ số và chữ số. Thiết bị đầu tiên mang nhãn Froyo ra mắt thị trường là HTC Nexus One. - Android 2.3( 6-12-2010)Gingerbread dòng smartphone đầu tiên sử dụng Gingerbread mang tên Nexus S, hỗ trợ công nghệ giao tiếp tầm gần NFC. Gingerbread đưa vào hệ thống một công cụ quản lý tải tập tin, cho phép theo dõi và truy xuất đến các tập tin đã tải về máy. Hệ thống này hỗ trợ nhiều camera cho các thiết bị có camera mặt sau và trước, quản lý nguồn pin hiệu quả hơn, tiết kiệm thời lượng pin. Phiên bản này khắc phục khá nhiều lỗi từ Froyo, kèm theo một số điều chỉnh trong giao diện người dùng (UI). - Android 3.0(22-2-2011)Honeycomb là một thế hệ Android đầu tiên dành riêng cho máy tính bảng (tablet). Mang những tính năng từ thế hệ Android 2.x, Android 3.0 cải tiến giao diện phù hợp với cách sử dụng máy tính bảng, bàn phím ảo thân thiện hơn, hỗ trợ xử lý đa tác vụ (multi- tasking) cho phép chuyển đổi qua lại các ứng dụng đang cùng chạy. Không chỉ có bề mặt được trau chuốt, phần lõi hệ thống có các cải tiến tương thích với phần cứng như hỗ trợ chip xử lý (CPU) đa lõi, tăng tốc phần cứng Android 3.0 đặt nền móng quan trọng cho thế hệ Android 4.x hợp nhất, khắc phục sự phân mảng của Android (có các phiên bản riêng dành cho smartphone và tablet). - Android 4.0(19-10-2011)Ice Cream Sandwich là thế hệ Android được mong đợi nhất đến nay-thế hệ smartphone đầu tiên trang bị ICS. truy xuất nhanh các ứng dụng thường dùng vào phần bên dưới giao diện chủ, tùy biến widget, dễ sắp xếp và duyệt danh sách ứng dụng hơn. Các ứng dụng đã có thể truy xuất nhanh từ màn hình khóa thiết bị (Lock screen), hiện các hãng sản xuất thiết bị chỉ mới cho phép Camera có thể chọn nhanh từ Lock screen. Ice Cream Sandwich hoạt động mượt mà, nhanh và đẹp hơn. - Android 4.1(9-7-2012.) Jelly Bean Máy tính bảng Nexus 7 là thiết bị dùng Jelly Bean đầu tiên ra mắt. Android 4.1 nâng tầm hoạt động cho hệ điều hành của Google, trở thành hệ điều hành cho thiết bị di động hàng đầu hiện nay, đe dọa cả "ông lớn" Windows. Khả năng sắp xếp giao diện chủ và widget trong Jelly Bean rất tùy biến và linh hoạt. Hệ thống hỗ trợ dịch vụ ví điện tử Google Wallet, đặc biệt trình duyệt web mặc định trong Android được thay thế bởi đại diện tên tuổi: Chrome, với khả năng đồng bộ dữ liệu theo tài khoản với bản Chrome trên máy tính. Jelly Bean giới thiệu Google Now, dịch vụ trực tuyến mới hiện chỉ dành cho Android (đắc lực cho công việc sắp xếp lịch trình, tìm kiếm thông tin, xác định vị trí) - Android 4.2 (11-2012) Phiên bản 4.2 và vẫn mang tên mã Jelly Bean. Android 4.2 tiếp tục mang đến những cải tiến hấp dẫn cho ứng dụng chụp ảnh (Camera) như HDR, Photo Sphere, hiệu ứng ảnh, Google Now, đưa tính năng lướt chọn từ rất hay trong bàn phím ảo. Hỗ trợ nhiều tài khoản người dùng trên máy tính bảng (multi-user profile). Câu 3: Kiến trúc nền tảng Android gồm mấy tầng? là những tầng nào? Nêu vai trò và chức năng của từng tầng? S 6P''JkC% ^C*: ;CqPr[H,I ;C4Hs#I ;CP''HP''rI ;C,D'@HP33tc,I ;CD'@H33#I <C u]-DT CqPr[ H, I -là tầng thấp nhất, được xây nhằm giải quyết phần nào giới hạn về nguồn năng lượng sử dụng và tối ưu việc sử dụng các tài nguyên trong thiết bị. ;`v9B- .4,, L C4 Hs#I ;Dmã nguồn cấp thấp cho những chức năng: wN*4NG-.,aE#L w.'J5E<^ipxi_ 3C.'b w/$A#1'UH&Iy C P''HP' 'rI ;'(0D'@ !P'' J9E34qH#I$3C DT4q"UE3.z44 =4,% ;=4,4 9 !*0(6 ;[=4,2E3'-E3L0 ,9B-40v .-9B- _#Z'@DT's,$3% ;63L4#Z'@9B4JTB% C, D'@ HP33 tc,I ;C!aP''Pis-$39@1D E3.4z4*G'2D'@% ;v,.#L"P4% ;$340$ '!4@_ % ;Zv'D'@P''" ;$34/)'(!4!4!" !% CD '@ HP33I ;JUD'@A/)E3. :b,c#-Q^'-Q-[3#P33-&[& [##-4;-4%4%%%F*04 D'@ P''1C% ;KGC$4D'@"#X{C% ;^*#|9#L463$13C 'B4$% Câu 4: Google Play Store là gì ? Làm thế nào để tải ứng dụng (miễn phí và trả phí) trên Google Play Store về điện thoại ? Google Play store:BGP''[,-9,3G3L,}E #L1Q% W*3@4@DZD'@P''- 3Y3)'('4D'@304B&=SP''4L Q% i@4@93A,}E#LU-$3G -3-#-3-4A..% sA0)'(~#DD'@' P''% ^*0'c'D'@>33',O -$ !*P''% Cách tải ứng dụng: K0#Z'@D'@3#4+33#-CT E34D'@Qi{,+,H , **03C+E3%T,v>3I% &**0J#Z'@D'@9~J-#,NT E3.MC#,CTE39CU-6v#,3E3 •4#4.*'4U#3€$C33%< ,>3"3"0,3J% TẢI XUỐNG CÁC ỨNG DỤNG ANDROID(MIỄN PHÍ) ;W GCCQi-*0C ,Qb0$'!".% ;&Z'@D'@^ZQi ;<D'@P''{D'@^Zi ;[1D'@^ZQi ;^59D'@LL% ;^4^++"D'@% ;^4^$3E#,Y"D'@% CÁCH MUA(TRẢ PHÍ) CHO ỨNG DỤNG TẠI GOOGLE PLAY STORE -Chọn biểu tượng Google Play Store trên màn hình Android -Chọn ứng dụng bạn yêu thích -Chọn mua ứng dụng và bắt đầu thanh toán. -Chọn loại thẻ thanh toán mà bạn sử dụng. Bạn cần điền đầy đủ các thông tin của thẻ và thông tin cá nhân. chọn nút Lưu, nếu không có gì sai sót xảy ra. -Chọn Chấp nhận & mua để tiến hành mua ứng dụng.Khi thành công, thiết bị của bạn đang tải ứng dụng và thực hiện cài đặt. ^Gk:^$6U"9'2P'' •^3C"9 '2P''.• Cấu trúc lưu trữ: ;<@NJH#I:D9E3‚%ƒ4*D'@% ;<@4P'':94/D'@)'(% ;<@###:[+!-@"@'( 0U'U'!a:E3-E3% ;<@#:=(0U"D'@% ;<@-#4\'#:+!-0DU 4{/30D'@H,34z=S P''&=SI ;<@:<@DE3r%ƒ4P=<3#%^ @#p#XP=<3#9x=-,)'( L$*-OCO!!x=AD"*% ;<E3''\#%:E35$'24*D $"'2%<B,D'@"-L#X5U %W ,,3C*B,#Z'@. L#X/% Các thành phần tạo nên 1 dự án Android: Activities: ;[9P4'9Z#7D'D'@)'(*0 A2 3% ;</44 E3'-*]3ZvUA U)'(4B':-$6 Services: ;KGP33^302U4@4 ,Y'%[9P4)'(00!9'*-9 &4,*'% ;[9&4D'@#X9B3"B3&4 P''i\4*0'(9P40,19&4% Content Providers: ;^i4'#P'''(0v9E3'U#•%F *0U'U'B'E3-A#1'U&`s-b#$ ,.4!UD'@"*0$% ;[9^i4'#'#X, MMB3^i4'" P''i\% Broadcast Receivers: ;F'#r4#^3D'@0„3 HF'#IZML% ;FD'@_*0ZU3HF'#I0UD '@, % ;[9LF'#r4MB3F'#r4 P''i\% Câu 6: Layout là gì ? Trong Android hỗ trợ chủ yếu mấy loại layout ? Giải thích chi tiết từng loại Layout Layout:'(0v3C',mE2$!% Android hỗ trợ chử yếu 4 loại Layout:ts-ss-<s- r4%<*: Frame Layout: sLA$% ^Duc4uc#X#„3J% W Duc.*0 3J 6*(,B .UL{'B#X!,$% Linear Layout: s's7D4#„3 3L+ 3 +'5% ssA3Y3L,09E 2 % Table Layout: s's7D-#„3 3L']49% ^6#Z'@…<rc†0 , 9']<4/'] <s*0D9+uc% #L9!294{#L3CZ"*3CZ$‡ ,B"/9!29{,B"3CZ 9$% Relative Layout: r4s-L#X#„3 34!AL4B%^* aL4BL-3!L,:-3- -'B4B*% W]9#Ls,:Q-Q'uc-s#uc-44%W ,)#Z'@% Câu 7: Widget là gì ? Nêu các loại Layout và View có thể sử dụng để thiết kế giao diện Widget. Widget:,03Y30!'U4EA4B) '(%P''/9#LBc'A2,0 3C*#Z'@'J,:FH6$I-<ucH 0!4TI-ˆ'<HE3 'U I-xFH6$ 1'I- r'FH6I-^,FH5I- Các loai layout và view có thể sử dụng để thiết kế giao diện widget: P#s-ts-r4s-<s-ss% <$c'.D'@ƒMB3AD 3,''%c':B3F-B3<uc-B3ˆ'<-B3xF- B3r'F-B3^,F4%4%%^B3- .-, MMB3uc H3,''%4cI% Vƒ"B3uc0'>93C.UE".'4 B3A#1$3C"'J"P''Hc'4 I Câu 8: Trình bày khái niệm về DDMS và Logcat. Cần phải sử dụng Logcat thế nào cho hợp lý để tránh lãng phí tài nguyên bộ nhớ ? =4,=[&4H==[&I:@$3U'!4@ @3. !-v .4T 3--4%4%% P''*9L'/1%s#X 94-636 5 ,1U '@9B#y tˆ3"P''TU"Q463v ‰&=^'4t##'%tˆ363'>'‰44 $‰&=^'"&-*A#1'U0,1H I Câu 9: Android hỗ trợ mấy loại Menu, nêu đặc điểm và cách sử dụng từng loại ^*8[P'': Options Menu: Šs[$,)'($6[ !% Šg%81L:V3#[{1'B.% Š8%j1:V3#[{1PF% ŠV3#[DUDT*234" P44*,T529P4,% Context Menu: ŠKG[A2[0!,$934 9L*i^+33% Š< !P''0!L3$4U9 L.^[L*B!% Sub Menu: Šs[0!,)'(59x9[,% Š&[*0'(0'#[V3#[ +^[% Câu 10: Có mấy kiểu mở một Activity mới, là những kiểu nào ? Mô tả chi tiết các trạng thái vòng đời của một Activity qua sơ đồ sau? Có 2 kiểu mở một Activity mới là: I[1P4B,$9P4_H,.$ P4_I:##2,i#J&3L4BP4_ I[1P4B,$93CP4_H4d.$P4 _I:,i#4BP4_% ;S14P4_.#,2C -„ „*35r#03@JD'@ ;W4E)"D'@#2,i#4 5D'@#2,r# Các trạng thái của vòng đời một activity: Š^HI:&2,5,P45CC%<#2 ,-32U4#:'P4- 'U4'#-44,.#2,&HI 5% Šr#HI:P4#,0#&33'- L 0!4'\#-#2,r#HI35%, #2,&HI5% Š&HI:&2,5,'"P40! . !%s6-UAU)'(4d E3-4 P44d#E\#% Šr#HI:&2,5,P4„CA4B) '(%‹)0.P4"+("T 3%<# #2,-*0#2,i#HI% [...]... Destroyed) 1- Running (đang kích hoạt): Khi màn hình là Foreground ( Activity nằm trên cùng ứng dụng và cho phép người sử dụng tương tác) 2- Paused (tạm dừng) : Activity bị mất focus nhưng mà vẫn nhìn thấy được Activity này (Ví dụ bạn mở một Activity mới lên dưới dạng Dialog) Trường hợp này nó vẫn có khả năng bị hệ thống tự động “XỬ” trong tình huống bộ nhớ quá ít 3- Stopped (dừng – không phải Destroyed):... bộ nhớ cho được lưu trong bộ nhớ cho đến khi đến khi ứng dụng bị đóng ứng dụng bị đóng Phần bài tập 1 Giải phương trình bậc 1 , bậc 2 2 Tính ước số chung lớn nhất, bội số chung nhỏ nhất 3 Viết chương trình nhập vào 1 số nguyên N, tính tổng S=1+2+3+N Tìm ước số của N và xét xem số N vừa nhập vào có phải là số nguyên tố hay không 4 Tính di n tích, chu vi các hình tam giác, hình tròn, chữ nhật, hình... hiện hành sẽ gọi sự kiện onPause() • onStop(): Sự kiện này được gọi khi Acitivity bị che khuất hoàn toàn bởi một Acitivity và Activity khác cũng dành được focus • onDestroy(): Đây là sự kiện cuối cùng được gọi trước khi Activity bị hủy hoàn toàn Khi một Activity bị hủy nó sẽ không còn được lưu trong bộ nhớ nữa và không khởi động lại được Câu 11: vòng đời của Activity? Với mỗi vòng đời Activity thường có... tác khi nó là foreground, không tương tác được khi nó không phải foreground như đã giải thích ở trên) - Foreground Lifetime: Sảy ra từ khi gọi onResume –> cho tới lúc gọi onPause : trong suốt thời gian này Activity luôn nằm ở trên cùng và Ta có thể tương tác được với nó câu 12: Hệ thống tổ chức các đối tượng trên Android? Lớp View và ViewGroup là hai lớp cơ sở, tạo ra các lớp con kế thùa từ chúng Bản... Android? Lớp View và ViewGroup là hai lớp cơ sở, tạo ra các lớp con kế thùa từ chúng Bản thân ViewGroup lại được kế thừa từ lớp View ViewGroup dùng để sắp xếp vị trí các đối tượng View trên giao di n Đối tượng ViewGroup trên cùng là cha của các đối tượng View và ViewGroup bên dưới Đối tượng ViewGroup ở cấp 2, là con của đối tượng ViewGroup cấp 1, nhưng cũng là cha của những đối tượng View và ViewGroup... phải Destroyed): Activity mất focus và không nhìn thấy được (ví dụ bạn mở một Activity mới lên mà Full màn hình chẳng hạn) Trong trường hợp này nó có thể bị hệ thống “Xử” trong bất kỳ tình huống nào >>>Như vậy cả Paused hay Stopped đều có khả năng bị Destroyed (hủy) khi bộ nhớ cần cho việc khác ưu tiên hơn Trong vòng đời của ứng dụng Android bạn cần phần biệt 2 loại sau: Visible Lifetime và Foreground... SharePreferences, trong sự kiện onCreate(Bundle) và trong sự kiện onCreate(Bundle) bạn bạn sẽ lấy lại các thông tin đã lưu sẽ đọc các thông tin đã lưu trữ và hiển trữ trước đóvà hiển thị lên giao thị lên giao di n di n Cách -lưu trữ tạm thời dũ liệu trong -lưu trữ dữ liệu mang tính chất lâu dài phân biệt vòng đời của một ứng dụng, chúng và có chia sẻ giữa nhiều thể hiện ta nên sử dụng Bundle trong sự của ứng... hình thang 5 Tính điểm trung bình, điểm tổng kết, xếp loại học lực 6 Tìm số lớn nhất, số nhỏ nhất trong n số nhập từ bàn phím 7 Các cách xử lý sự kiện giữa các Activity, thao tác với Toast, thao tác với Dialogs Chúc các cưng thi tốt và đạt điểm cao ! Good luck and game over!@@ Sweetened NT D . người dùng lưu tập tin đính kèm. Android 1.1 sửa một số lỗi trong Android 1.0. - Android 1.5(30-4-2009)Cupcake Cupcake, tên mã đầu tiên áp dụng cho phiên bản Android. Cupcake mang nhiều tính. giao diện người dùng (UI). - Android 3.0(22-2-2011)Honeycomb là một thế hệ Android đầu tiên dành riêng cho máy tính bảng (tablet). Mang những tính năng từ thế hệ Android 2.x, Android 3.0 cải tiến giao. tốc phần cứng Android 3.0 đặt nền móng quan trọng cho thế hệ Android 4.x hợp nhất, khắc phục sự phân mảng của Android (có các phiên bản riêng dành cho smartphone và tablet). - Android 4.0(19-10-2011)Ice