Giáo trình Lập trình Java

Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Bài 1: Tng quan vlp trình Android  
và Môi trường phát trin  
I. Tng quan  
1. Hệ điều hành Android  
a. Lch sphát trin  
Năm 2003, Android Inc. được thành lp bi Andy Rubin, Rich Miner,  
Nick Sears và Chris White ti California.  
Năm 2005, Google mua lại Android Inc và bắt đầu nuôi ý tưởng tự  
sn xuất điện thoại di động.  
Năm 2007, tổ chức OHA (Open Handset Alliance) được thành hơn  
80 công ty trong lĩnh vực kthuật điện tbao gm các công ty  
chuyên vphn cng, phân phi thiết bị di động đến các công ty  
phn mm, sn xut cht bán dẫn… Có thkể đến mt scông ty  
ni tiếng như Samsung, Motorola, LG, HTC, T-Mobile, Vodafone,  
ARM và Qualcomm…  
Trong tương tai, OHA hi vọng scó thể mang đến cho người tiêu  
dùng nhng tri nghim tt nht bng vic không ngng phát trin  
và mrng nn tảng cũng như tích hợp các tin ích phc vụ đa dạng  
nhu cu của người dùng. Nhưng điu quan trng nht, bn skhông  
phi tn bt ký chi phí nào cho các công clp trình ca các lp  
trình viên phn mm hay các hãng phát trin thiết bị di động ca  
OHA.  
Năm 2008, Google ra mắt chiếc di động đầu tiên đồng thi open  
source bn SDK (Software Development Kit) phiên bn 1.0.  
Năm 2010, Google khởi đầu dòng thiết bNexus vi thiết bị đầu tiên  
ca HTC là Nexus One.  
Năm 2013, ra mắt lot thiết bphiên bn GPE.  
Trang 1  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Năm 2014, Google công báo Android Wear, hệ điều hành dành cho  
các thiết bị đeo được.  
b. Các phiên bn hệ điều hành  
Hình 1 1. Các phiên bn ca Android  
2. Ti sao nên lp trình trên Android?  
a. Xu thế phát trin công nghdi động  
Theo nhận định ca nhiu chuyên gia công nghtcác hãng công  
nghệ hàng đầu như Microsoft, Google, IBM, … Ba xu hướng tt trên  
toàn cu hin nay là: Social and Security (mng xã hi và bo mt),  
Mobility (công nghệ di động), Analytics Big Data (phân tích dliu  
lớn), Cloud (Điện toán đám mây).  
Trên thế gii:  
Tháng 01/2014, trang WeAreSocial đã đưa ra báo cáo về “Bối cnh  
dliu toàn cầu” vi nhng chsphát trin rất đang kinh ngạc ca  
Thế Gii S. Cthsliu thng kê ca WeAreSocial cho thy:  
- Số lượng đăng kí sử dụng di động đang hoạt động vào khong 93%  
ca dân sthế gii.  
Trang 2  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
- Tlệ người kết ni Internet toàn cầu đạt 35%, tương đương 2,5 tỉ  
người.  
- Các kênh Mng xã hi tiếp tc phát trin mnh mtrong 12 tháng  
qua, khi đạt tlthâm nhập người dùng là 26%.  
Hình 1 2. Bi cnh dliu toàn cu - Ngun: We Are Social  
Hơn 4 tỉ người trên khp thế gii hiện đang sở hu ít nht mt chiếc  
điện thoại di động.  
Ti Vit Nam:  
Trong giai đoạn 2014 - 2016, xu hướng Mobile và lượng người dùng  
Internet 3G stiếp tục tăng mạnh. Các dch vkết ni OTT và truyn  
thông xã hội đóng góp hơn 80% phương thức giao tiếp online, video  
online và ni dung số mobile. Điều này góp phần đẩy mnh xu  
hướng truyn thông số đa phương tiện, đa màn hình sẽ bùng nvi  
độ phủ hơn 50% dân số Vit Nam.  
Doanh thu điện thoi thông minh và máy tính bng giờ đây đã vượt  
qua PC và laptop. Các doanh nghip hoạt động trong lĩnh vực sn  
Trang 3  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
xut công nghệ cũng đang cố gắng hướng ti các dch vụ như  
“thanh toán di động, ni dung di động, dch vụ xác định địa điểm  
hay khai thác dliu sdng của người dùng thiết bị di động”.  
Hình 1 3. Chsvề Internet trên di động ti Việt Nam năm 2014 -  
Ngun: Theo thng kê Cục Thương mại điện tvà công nghthông  
tin (VECITA), Bộ Côn g thương.  
Tltruy cp Internet qua các thiết bị di động: 36% tng số  
dân  
Tltruy cp Internet có tham gia mua sm online 57%  
Mt ngưi Vit Nam truy cp Internet 5,6 gi/ngày, 6,4  
ngày/tun - Tng sthi gian 36 gi/tun.  
Trang 4  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Hình 1 4. Thng kê các chsố người dùng smartphone ti Vit Nam  
năm 2014 - Ngun: Theo thng kê Cục Thương mại điện tvà công  
nghthông tin (VECITA), Bộ Công thương.  
Hình 1 5. Thng kê tlệ tăng trưởng ca thị trường iOS và Android  
ca Vit Nam - Ngun: Flury Analytics  
Trang 5  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Hình 1 6. Thng kê chsố điện thoại di động và các loi hình thanh  
toán ti Việt Nam năm 2014 - Ngun: Theo thng kê Cục Thương  
mại điện tvà công nghthông tin(VECITA), Bộ Công thương.  
b. Thị trường thiết bAndroid  
Trong tt ccác hệ điều hành dành cho di động hin nay, có thnói:  
Android đã mang li mt cuc cách mng tht scho các lp trình  
viên. Ni bt vi tính mở, đơn giản nhưng mạnh m, không tn phí  
cho bt cbn quyền nào và đặc bit cộng đồng lp trình viên vô  
cùng ln mnh. Android tht slà mt nn tng mnh mcho phép  
các lp trình viên, những người chưa từng lp trình trên thiết bdi  
động có thto ra các ng dng mt cách nhanh chóng và ddàng.  
Có thể nói Android đang dần mang li phong cách mi trong thói  
quen sdụng điện thoi của người dùng.  
Ktkhi bắt đầu được thương mại hóa, ước tính mi ngày có  
khong 850 ngàn thiết bị Android được kích hot. Nhiu cuc  
nghiên cứu đã chỉ ra rng phn ln các thiết bsmartphone mi  
được xuất xưởng chy hệ điều hành Android.  
Trang 6  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Có ti 53 triu thiết bsdng mã ngun mAndroid (AOSP) được  
bán ra, chiếm ti 11% tng ssmartphone trong quý 1/2014. Điều  
này mt ln na cho thấy, Android đã có được một địa vcc kỳ  
vng chc trên thị trường smartphone.  
Công ty nghiên cu thị trường Strategy Analytics công bhôm  
31/10/2014 cho biết, số lượng smartphone chy Android bán ra  
trên phm vi toàn cu đạt 268 triu chiếc, tăng mạnh so vi thành  
tích 206 triu chiếc ca cùng kỳ năm ngoái. Nếu xét vthphn, chú  
robot xanh của đại gia công nghệ Google đang gi84% thphn.  
c. Nhu cu tuyn dng lp trình viên Android  
Vi xu thế phát trin công nghệ di động nhanh và mạnh như hiện  
nay, thị trường thiết bAnroid chiếm vtrí cao nht không chỉ ở Vit  
Nam mà trên toàn thế gii, thì nhu cu sdng các ng dng cho  
các thiết bAndroid là rt ln. Vì vy, nhu cu tuyn dng lp trình  
viên Android cũng rt ln và sẽ tăng nhanh.  
II. Kiến trúc Android  
Có thhiu Android Software Stack bao gm nhân Linux, tp các  
thư viện C/C++ được truy xut bi tng ng dụng để sdng các  
dch v, các bqun lý thc thi và qun lý ng dng. Mi tầng đều  
có chức năng vai trò riêng biệt vi nhau:  
1. Linux kernel lõi chính ca toàn hthng bao gồm các điều  
khin phn cng, bqun lý xlý và bnh, bo mt, kết ni  
mng, bquản lý năng lượng.  
2. Libraries thc thi trên tng nhân Linux, bao gồm các thư  
vin lõi khác nhau của C/C++ như libc và SSL. Có các dạng sau:  
Thư viện htrphát các tập tin đa truyn thông.  
Bqun lý hin thị  
Thư viện htrợ đồ ha OpenGL 2D và 3D  
SQLite htrợ lưu trữ cơ sở dliu  
Trang 7  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
SSL và WebKit cho phép tương tác với trình duyt và  
bo mt Internet.  
3. Android Run Time – đây chính là điểm làm nên skhác bit  
gia thiết bAndroid và thiết bLinux. Bên trong thành phn  
này bao gm máy ảo Dalvik và thư viện lõi. Android Run Time  
ngoài tăng tốc độ cho ng dng còn làm nn cho tng  
Application Framework kết nối đến.  
Core Libraries mc dù hu hết các ng dng Android  
viết bng ngôn ngữ Java nhưng Dalvik không phải là  
máy ảo Java. Các thư viện lõi Android scung cp hu  
hết các chức năng chính có thể có trong thư viện Java  
cũng như thư viên riêng bit ca Android.  
Dalvik VM dng máy o cho phép tối ưu hóa để có thể  
chạy được nhiu tiến trình mt các hiu qu, da trên  
nhân Linux các máy o cho phép qun lý các tiu trình  
và qun lý bnhớ ở bc thp.  
4. Application Framework cung cp các lp cho vic to ra các  
ng dng. Bên cạnh đó nó cũng chứa các lp trừu tượng cho  
phép truy nhp phn cng, qun lý giao diện người dùng và  
tài nguyên ca ng dng.  
5. Application Layer gm các ng dụng được tích hp sn và  
các ng dng ca hãng thba. Tng ng dng trong Android  
Run Time sdng các lp ttầng Application Framework để  
thc thi ng dng.  
Trang 8  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Hình 1 7. Kiến trúc Android  
III. Môi trường phát trin ng dng Android  
1. Gii thiệu và cài đặt Java JDK, Android SDK  
Android SDK (Software Development Kit) và JDK (Java Development  
Kit) là hai công ccn thiết để chúng ta có thlp trình nên các ng  
dng Android. Và tt nhiên nếu bn không mun lp trình trên phn  
mm son thảo văn bản thì mt công clp trình IDE (Integrated  
development environment) srt hu ích và tin lợi. Eclipse được  
xem là mt công chtrrt tt trong vic lp trình ng dng  
Android.  
Android SDK, JDK và Eclipse đều có mt trên mt sphiên bn hệ  
điều hành Windows, Mac OS và Linux do đó chúng ta có thlp  
trình trên hệ điều hành mà chúng ta đã quen sử dng. Thêm na,  
Android được thc thi trên máy o Dalvik nên vic phát trin ng  
dụng là như nhau trên cả 3 môi trường.  
Thiết lập môi trường phát trin:  
Trang 9  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Như đã nói ở trên, ng dụng Android được thc thi trên máy o  
Dalvik nên chúng ta có thlp trình trên nhiu phiên bn ca các hệ  
điều hành. Cthể như sau:  
Microsoft Windows (XP, Vista, Windows 7, Windows 8)  
Mac OS X tphiên bn 10.5.8 trở đi (chip xử lý Intel)  
Linux (bao gm các hệ điều hành tích hợp thư viện GNU 2.7  
trlên)  
Để bắt đầu viết ng dng, chúng ta cn tải và cài đặt hai bphn  
mm sau:  
trước hết và nên chn phiên bn mi nht).  
gói ADT Bundle (Android Developer Tools Bundle), gói này scha  
các thành phn:  
Eclipse và ADT plugin.  
Android SDK Tools.  
Android Flatform tools  
Android API mi nht.  
Android System image mi nht cho Emulator.  
2. Cp nht Android API  
Khi cài đặt xong ta sẽ có thư mục android-sdk cha mt số các thư  
mục như hình. Việc đầu tiên cn làm vi bSDK này là ta sti các  
phiên bn SDK kèm theo mã ngun ca hệ điều hành đã được  
Google phát hành chính thc bng cách khi chy trình SDK  
Manager.  
Chúng ta sẽ đánh dấu vào mi phiên bản Android tương ứng cn ti  
và mrng mục này để xem các thành phần đi kèm phiên bản bao  
gm phiên bn mi nht ca các công chtrợ, thư viện tích hp,  
tài liệu hưng dn và các ví dminh ha.  
Trang 10  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Để sdng cac hàm API ca Google (bao gm cMaps API) chúng  
ta nên chn cmc Google APIs.  
Sau khi cài Plugin ADT, ta sthy xut hin 2 biểu tượng trên thanh  
công cca Eclipse.  
Biểu tượng đầu tiên là Android SDK Manager, biểu tượng thhai là  
Android Virtual Device.  
Android SDK Manager qun lí các phiên bn Android. ng vi tng  
phiên bn là các tài liệu hướng dn, các ví dminh ha và các hàm  
API...Nhn vào biểu tượng để khởi động Android SDK  
Manager ADT sẽ tượng động cp nht các gói mi, bn có thể  
la chn phiên bn Android hoc các công ccn thiết và n Install  
Pakages.  
Trang 11  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Hình 1 8. Tải và cài đặt bSDK vi SDK Manager.  
3. Cài đặt và sdng Android Virtual Device (AVD)  
Android Virtual Device (AVD), cho phép lp trình viên to và qun lí  
các thiết bị ảo. Để to thiết bị ảo ta khởi động AVD, ta chn New,  
mt hp thoi mi hiện ra và điền vào các thông tin sau:  
a. Name: tên thiết o cn tạo (thường đặt tên theo phiên  
bn).  
b. Target: phiên bn Android mun thc thi trên thiết bị ảo  
này.  
Trang 12  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
c. CPU/ABI: gilp chip xlý cho thiết bị ảo, mặc định là ARM  
(armeabi-v7a) hoặc Intel Atom đối vi tng phiên bn khác  
nhau.  
d. SD Card: cp phát bộ lưu trữ ngoài cho thiết bhoc trỏ  
đến tp tin nh có sn.  
e. Snapshot: bt tt chế độ chp màn hình.  
f. Skin: định nghĩa độ phân giải cũng như kích thước màn  
hình cho thiết bị ảo.  
g. Hardware: bsung các thuc tính phvphn cng cho  
thiết b. Ở đây ta cần bsung thêm thuc tính Keyboard  
Support để có thnhp liu vào thiết bị ảo tbàn phím  
máy tính cá nhân.  
Trang 13  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Hình 1 10. Ca sthiết lp máy o (AVD).  
Nhn Create AVD để kết thúc quá trình to thiết bị ảo. Danh sách  
các thiết bị ảo được lit kê trên bng bên tay phi, ta có nhn chn  
để khi động (Start) hoc các tuchnh (Edit), xoá (Delete) và xem  
li thông sthiết b(Details).  
Trang 14  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
IV. Xây dng đề án Android  
Sau khi đã tìm hiểu vkiến trúc Android và môi trường phát trin  
ca ng dng Android, ta tiến hành xây dng đề án Android.  
Để to đề án Android ta sdùng công cAndroid New Project  
Wizard theo các bước sau:  
1. Tthanh tác vca Eclipse chn File New Android  
Application Project.  
2. Trong hp thoi mi xut hiện đin các thông tin sau:  
Project Name là tên của đề án.  
Application Name là tên ng dng mà chúng ta sto.  
Package Name là tên định danh ca gói phn mềm được  
hthống lưu trữ trên thiết bị khi cài đặt ng dng.  
Thường sẽ được đặt theo tên ca mt tchc hoc cá  
nhân to ra ng dng. Bt buc phải có 2 trường dliu  
trở lên và ngăn nhau bởi du chm.  
Ví dụ: “com.your-company.demoapplication”.  
Build SDK: chính là phiên bn mà lp trình viên sphát  
trin ng dng, mc nhiên các hàm htrsẽ được tích  
hp nhm tối ưu hoá ứng dng trên phiên bn này.  
Minimum Required SDK: phiên bn thp nhất được chỉ  
định để chy ng dng. Mt scác hàm API sẽ được gi  
bsung trong phần thư vin htr.  
Create custom launcher icon: đánh dấu vào phần này để  
thiết lp biểu tượng cho ng dng bng công ccó sn  
trong ADT.  
Mark this project as a library: đánh dấu cho biết chúng ta  
đang cần to ra một đề án mi dạng thư viện để sdng.  
Location: nơi dùng để lưu trữ đề án. Có thể để mặc định  
hoc to ra nơi lưu trữ mi bằng cách đánh dấu hoc huỷ  
đánh dấu phn Create Project in Workspace.  
3. Nhn Next qua hp thoi tiếp theo sẽ là nơi đchúng ta to ra  
biểu tượng cho ng dng nếu như hộp thoại trước chúng ta  
Trang 15  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
có đánh dấu vào phần “Create custom launcher icon”. Ở đây  
ta có thchọn Image để chn các tp tin nh, hoc Clipart là  
các biểu tượng có sn và Text nếu mun hin ththông tin lên  
biểu tưng.  
4. Tiếp tc nhn Next ta squa hp thoi to Activity (có thể  
tm hiu là màn hình ng dụng đầu tiên). Ở đây, chúng ta nên  
chn Empty Actitvity.  
5. Trong hp thoi cui cùng, ta sthiết lp thêm mt scác  
thông số cho Activity như tên, giao diện sẽ dùng, các điều  
hướng trên (chhtrtphiên bn Android 4.0). Nhn Finish  
để hoàn thành vic tạo đề án.  
Trang 16  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Hình 1 9. Cấu trúc một đề án Android.  
Trang 17  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Trong đề án va tạo trong thư mục src scó mt tập tin Java, đó  
chính là tp tin chứa Activity mà chúng ta đã tạo ra trong phn to  
mới đề án.Về cơ bản Activity có khái nim ging Form trong lp  
trình .NET.  
1/ src: Thư mục này cha các file mã ngun .java cho dán ca  
bn.  
2/ gen: Thư mục này cha file R.java - 1 file được trình biên  
dch sinh ra có khả năng tham chiếu ti tt ccác tài nguyên  
trong dán. Bn không nên chnh sa file này.  
3/ bin: Thư mục này cha các file *.apk (Android Package file)  
được build bi ADT.  
4/ res/drawable-hdpi: Đây là thư mục chứa các đối tượng  
drawble được thiết kế dành cho các màn hình có độ phân gii  
cao.  
5/ res/layout: Đây là thư mục cha các file layout cho vic thiết  
kế giao din.  
6/ res/values: Đây là thư mục dành cho các file XML khác cha  
1 tp hp các tài nguyên, ví dụ như: các định nghĩa về strings,  
colors.  
7/ AndroidManifest.xml: Đây là file manifest mô tả các đặc  
điểm cô bn ca ng dụng và định nghĩa các components.  
Ngoài ra còn có thư mục assets cha tt ccác tp tin không biên  
dịch như : âm thanh, hình ảnh, tp tin CSDL ca ng dụng…  
Trang 18  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Bài 2: Layout và các điều khiển cơ bản.  
I. Layout  
Các điều khin được cha trong Layout.  
Để thiết kế giao din tốt cho Android thì trước tiên chúng ta phi  
biết sdng mt số Layout cơ bản trong Android, đồng thi chúng  
ta phi biết kết hp các Layout này li với nhau để cho ra được giao  
din phc tạp như ý muốn.  
1. Cách to mt Layout mi  
Chn File New Android XML File Linear Layout (layout bn  
mun to bn có thchọn Relative Layout, Table Layout, …).  
Hình 2 1. To layout  
Trang 19  
Lp trình Java  
Trung tâm tin hc – ĐH KHTN TP.HCM  
Hình 2 - 2. To layout  
2. Code kết ni layout vào Activity  
protected void onCreate(Bundle savedInstanceState) {  
super.onCreate(savedInstanceState);  
setContentView(R.layout.layout_man_hinh_chinh);  
}
3. HierarchyViewer  
Mt Layout phải được kết nối vào Activity nào đó thông qua hàm  
setContentView, Android sẽ có cơ chế dch XML thành Java code.  
Trang 20  
Tải về để xem bản đầy đủ
pdf 40 trang baolam 04/05/2022 5720
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Lập trình Java", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfgiao_trinh_lap_trinh_java.pdf