NHAT NGHE

Lập Trình Android Cơ Bản

Khóa học lập trình ứng dụng Android giúp cho học viên:
- Kiến thức về lập trình Java.
- Kiến thức về lập trình Android.
- Kiến thức để có thể thi chứng chỉ quốc tế ATC Android (ôn luyện vào cuối mỗi buổi học)
Sau khi hoàn tất khóa học học viên có thể tự phát triển các phần mềm Android, gắn quảng cáo, đóng gói sản phẩm và đưa lên Google Play

Học Phí: 3.000.000 VND

GIỚI THIỆU KHÓA HỌC

Khóa học lập trình ứng dụng Android giúp cho học viên:
- Kiến thức về lập trình Java.
- Kiến thức về lập trình Android.
- Kiến thức để có thể thi chứng chỉ quốc tế ATC Android (ôn luyện vào cuối mỗi buổi học)

MỤC TIÊU KHÓA HỌC


Sau khi hoàn tất khóa học, Học viên có thể tự phát triển các phần mềm Android, gắn quảng cáo, đóng gói sản phẩm và đưa lên Google Play

BẰNG CẤP - CHỨNG CHỈ

* Tham dự trên 80% số buổi học, Hoàn thành Đồ Án cuối khóa, Học viên được cấp Chứng nhận hoàn tất khóa học của Trung Tâm Nghiên Cứu Phát Triển Đào Tạo CNTT Nhất Nghệ, có giá trị toàn quốc

ĐIỀU KIỆN THEO HỌC

- Yêu thích và đam mê lập trình
- Chương trình có nhắc lại kiến thức java, học viên chỉ cần biết lập trình cơ bản của một trong các ngôn ngữ lập trình như C , C++, C#, Java, javascript, php…. (biết Java hoặc C# là lợi thế)

NỘI DUNG HỌC

Mục tiêu:
+ Hiểu được một số công nghệ phần cứng và phần mềm trên smartphone.
+ Triển khai được môi trường để lập trình android trên eclipse và android studio

- Công nghệ màn hình cảm ứng, chip gia tốc kế, chip con quay hồi chuyển, chip GPS….
- Lịch sử phát triển, ưu điểm và khuyết điểm của android.
- Cài đặt môi trường lập trình android - eclipse.
- Cài đặt môi trường lập trình android - android studio.
- Cài đặt máy ảo mặc định và máy ảo genymotion
Mục tiêu:
+ Java: Hiểu được biến, kiểu dữ liệu, phép toán
+ Android: Hiểu được cấu trúc cơ bản của một project android

- Biến, kiểu dữ liệu, phép toán, ép kiểu….
- Các bước phát triển một ứng dụng android.
- Cấu trúc project trên eclipse.
- Cấu trúc project trên android studio.
- Thiết kế giao diện bằng tool kéo thả và bằng mã xml.
- Các view cơ bản EditText, Button, TextView.
- Ánh xạ từ giao diện sang mã java và bắt sự kiện chạm.
- Phát triển phần mềm máy tính điện tử bỏ túi
Mục tiêu:
+ Java: Hiểu cấu trúc điều khiển
+ Android: Triển khai được các phần mềm đa ngôn ngữ.

- Cấu trúc if else, if lồng nhau, switch case…
- Khai thác tài nguyên chuỗi để giảm thời gian phát triển và cập nhật chuỗi.
- Phát triển phần mềm đa ngôn ngữ tuỳ theo cấu hình của máy.
Mục tiêu:
+ Java: Hiểu cấu trúc vòng lặp.
+ Android: Khai thác tài nguyên hình ảnh

- Cấu trúc vòng lặp for, while, do…while
- Thư mục drawable, truy xuất hình ảnh trong layout và trong code. Hình ảnh đa ngôn ngữ.
Mục tiêu:
+ Java: Khai thác các lớp thông dụng trong java như String, Math, Date, Regular expression….
+ Android: Tạo dialog xử lý ngày và giờ

- Lớp String, phân tích xử lý chuỗi
- Lớp Math thực hiện các thao tác toán học phức tạp, tạo số ngẫu nhiên
- Lớp regular expression kiểm tra nâng cao dữ liệu đầu vào
- Lớp date xử lý dữ liệu ngày giờ
- TimePickerDialog , DatePickerDialog các dialog nhập ngày giờ của android.
- Phát triển phần mềm chơi bài cào
- Phát triển phần mềm hẹn ngày, giờ
Mục tiêu:
+ Java: Hiểu và vận dụng tốt lập trình hướng đối tượng….
+ Android: Cách tổ chức lập trình hướng đối tượng trong android

- Lớp, đối tượng, thuộc tính, phương thức, hàm tạo, nạp chồng.
- Kế thừa, ghi đè, trừu tượng, giao diện, đa hình.
Mục tiêu:
+ Java: Hiểu được array và collection.
+ Android: Chọn lựa và vận dụng array và collection một cách phù hợp cho bài toán

- Array.
- Collection ArrayList
- Collection HashMap.
- Collection HashSet.
- Kết hợp, lồng nhau giữa các collection.
Mục tiêu:
+ Hiểu được các kiểu dialog và cách tạo ra chúng.
+ Hiểu được Toast và cách tạo
+ Thực hiện việc tuỳ chỉnh được giao diện và bổ sung chức năng cho dialog và Toast.

- AlertDialog – Hộp thoại cảnh báo.
- Multi-choice Dialog – Hộp thoại chọn lựa nhiều mục.
- Single-choice Dialog – Hội thoại chọn lựa một mục.
- Progressbar Dialog – Hộp thoại tiến trình.
- Bắt sự kiện phản hồi từ dialog.
- Tạo toast.
- Tự thiết kế lại giao diện và chức năng cho dialog
- Tự thiết kế lại giao diện cho Toast
- Phát triển phần mềm có Dialog và Toast được thiết kế lại theo ý thích
Mục tiêu:
+ Hiểu được các luồng nhập xuất dữ liệu trong android.
+ Vận dụng được các loại luồn nhập xuất dữ liệu khác nhau.
+ Phân biệt được các dạng lưu trữ dữ liệu trong android.
+ Biết được ưu khuyết điểm để chọn lựa phương pháp lưu trữ dữ liệu tùy theo tình huống.

- Các loại InputStream, OutputStream.
- Đọc dữ liệu trong Assets.
- Đọc ghi dữ liệu trong SharedPreferences.
- Đọc ghi dữ liệu trong Internal Storage.
- Đọc ghi dữ liệu trong Non removable External Storage.
- Đọc ghi dữ liệu trong Removable External Storage.
- Cấp quyền đọc ghi trong Internal External Storage.
- Cách đọc ghi dữ liệu từ từ từng phần cho kiểu dữ liệu lớn (đọc ghi trên máy, download, upload).
- Phát triển phần mềm đọc sách, dữ liệu lưu trữ trong file txt
Mục tiêu:
+ Hiểu sâu hơn về các view
+ Tự thiết kế lại các view theo ý thích

- Các thuộc tính, sự kiện chung và riêng của TextView, EditText, Button, Checkbox, Radio, Toogle, Switch, Spinner….
- Sử dụng selector để thiết kế lại các view
- Sử dụng style để thiết kế lại các view
- Phát triển phần mềm điều khiển wifi với các view được thiết kế lại.
- Phát triển phần mềm đèn pin với các view được thiết kế lại.
Mục tiêu:
+ Hiểu và vận dụng được các view dạng list.
+ Hiểu và vận dụng được các loại adapter tuỳ theo yêu cầu.
+ Biết được các kết hợp giữa các view dạng list và adapter để đưa dữ liệu lên adapter, từ adapter đổ dữ liệu lên các view dạng list...

- Spinner.
- Gallery.
- GridView.
- ListView.
- ExpandableListView.
- Dữ liệu cố định trong xml.
- Dữ liệu động trong array hoặc arraylist.
- SimpleAdapter.
- ArrayAdapter.
- ExpandableListAdapter.
- SwipeRefreshLayout.
- Kế thừa từ các adapter có sẵn, thiết kế lại layout để xây dựng các view list phức tạp theo ý thích.
Phát triển các phần mềm có view dạng list được thiết kế đẹp tuỳ theo sở thích
Mục tiêu:
+ Hiểu được vòng đời của Activity.
+ Hiểu được các trạng thái của Activity khi sử dụng chương trình.
+ Chọn lựa cách xử lý cho phù hợp với từng trạng thái của chương trình.
+ Biết cách tạo ra một Activity mới.
+ Phân biệt và vận dụng được các loại intent.
+ Gởi nhận dữ liệu giữa các activity.

- Vòng đời của Activity. Các trạng thái Starting, Running, Paused, Stopped, Destroyed.
- Các hàm trong vòng đời onCreate, onStart, onResume, onPause, onStart, onRestart, onStop, OnDestroy.
- Intent không tường minh.
- Intent tường minh.
- Tạo mới một Activity theo cách thủ công, tạo một activity theo cách tự động.
- Gởi dữ liệu giữa các activity.
- Nhận dữ liệu trả về từ một activity.
Phát triển các phần mềm có nhiều giao diện làm việc, gởi nhận dữ liệu giữa các giao diện
Phát triển các phần mềm lấy hình từ camera hoặc trong máy, duyệt web, gọi điện, nhắn tin, gởi mail, hiện bản đồ, vẽ đường đi….
Mục tiêu:
+ Phân biệt được các loại menu.
+ Hiểu và tạo được menu cho toàn chương trình.
+ Hiểu và tạo được menu ngữ cảnh áp dụng vào các view dạng list.
+ Hiểu và tạo được menu dạng popup.
+ Dùng ActionBar kiểu mới (ToolBar)

- ContextMenu.
- OptionMenu.
- PopupMenu.
- ToolBar thay cho ActionBar.
Phát triển các chương trình có các loại menu phù hợp.
Mục tiêu:
+ Hiểu được ưu và khuyết điểm của database SQLite
+ Tạo và điều khiển được database SQLite

- SQLiteOpenHelper.
- SQLiteDatabase.
- Cursor.
- Xem, Thêm, Xoá, Sửa dữ liệu.
- Phát triển các chương trình có database như: Quản lý công việc, lịch hẹn, Quản lý thu chi, Quản lý bán hàng….
Mục tiêu:
+ Khắc phục được khuyết điểm của database SQLite
+ Tạo và sử dụng database với dữ liệu có sẵn

- Tạo database SQLite trên PC và đưa sẵn dữ liệu vào..
- Đưa database SQLite từ PC vào Android.
- Khai thác database có sẵn.
- Phát triển các chương trình có database có sẵn như: Game show rồng vàng (trắc nghiệm), chương trình tra cứu các loại thông tin, chương trình đọc truyện….
Mục tiêu:
+ Phân biệt được các loại layout, hiểu được ưu và khuyết của từng loại
+ Vận dụng nhiều loại layout để thiết kế hiệu quả
+ Vận dụng các view động bằng code
+ Điều khiển đơn chạm SingleTouch
+ Điều khiển đa chạm MultiTouch

- LinearLayout, RelativeLayout, FrameLayout, TableLayout…., kết hợp các layout.
- Kế thừa và bổ sung các view bằng mã java
- OnDraw, Canvas, Paint, Path…
- OnTouchEvent với SingleTouch và MultiTouch…
- Phát triển các chương trình với các layout phức tạp.
- Phát triển chương trình bé tập vẽ với singletouch và multitouch.
- Phát triển chương trình xem duyệt hình ảnh bằng slide và zoom.
Mục tiêu:
+ Hiểu và vận dụng các loại Tween Animation.
+ Hiểu và vận dụng animation cho view và Activity

- Alpha Animation.
- Rotate Animation.
- Scale Animation.
- Translate Animation.
- Set Animation.
- Interpolator.
- Điểu khiển animation trong code.
- Animation khi chuyển Activity.
- Phát triển các chương trình có màn hình chào và hiệu ứng.
- Phát triển game đơn giản “Chiếc nón kì diệu”.
Mục tiêu:
+ Hiểu được Content Provider.
+ Quản lý các Content Provider.
+ Truy xuất Content Provider MediaStore.

- ContentResolver.
- ContentProvider đọc thông tin thiết bị.
- MediaStorage Image (hình ảnh trong máy).
- Phát triển chương quản lý hình ảnh trong điện thoại.
Mục tiêu:
+ Vận dụng MediaStore để quản lý video âm thanh.
+ Tạo và điều khiển việc ghi, phát âm thanh và video.

- Truy xuất, quản lý MediaStore Audio và Video.
- Phối hợp với các view khác để điều khiển video, âm thanh.
- Ghi âm và phát lại.
- Phát triển phần mềm nghe và điều khiển nhạc.
- Phát triển phần mềm ghi âm và phát lại.
Mục tiêu:
+ Hiểu được cách truy xuất contact.
+ Biết cách điều khiển thêm xoá sửa contact.

- ContactContract.
- ContentProviderOperation.
- ContentResolver.
- Phát triển các phần mềm truy xuất contact.
Mục tiêu:
+ Hiểu được cách truy xuất và quản lý SMS.
+ Hiểu được cách gởi tin nhắn bình thường và tin nhắn tự động.

- SmsManager.
- Content: sms.
- Gởi SMS bằng intent
- Gởi SMS tự động
- Phát triển phần mềm đọc tin nhắn, gởi tin nhắn bình thường và tự động
Mục tiêu:
+ Hiểu và tạo được Notification.
+ Hiểu và kết hợp Notification và PendingIntent.

- NotificationManager.
- Builder.
- Notification
- PendingIntent
- getActivity, getService, getBroadcast
- Các loại FLAG
- Phát triển các phần mềm có chức năng Notification
Mục tiêu:
+ Hiểu được Broadcast Receiver.
+ Biết được cách đăng kí lắng nghe tín hiệu của hệ thống.
+ Biết cách lắng nghe và điều khiển tín hiệu Telephone.

- Broadcast Receiver.
- TelephonyManager.
- PhoneStateListener.
- Phát triển phần mềm chặn cuộc gọi
Mục tiêu:
+ Hiểu được Service
+ Phân biệt được các loại Service.
+ Vận dụng Service

- Started Service.
- Bound Service.
- OnStartCommand.
- OnBind.
- OnCreate.
- OnDestroy.
- Phát triển các phần mềm có phần service chạy ngầm
- Phát triển phần mềm nghe nhạc chạy ngầm (không dừng khi tắt màn hình hoặc thoát ra)
Mục tiêu:
+ Hiểu được các đơn vị kích thước trong Android
+ Hiểu được cách tạo style và theme
+ Hiểu được cách tạo tài nguyên tương thích với các loại màn hình khác nhau

- Dp, Sp. Ldpi, mdpi, hdpi, xhdpi…
- Tạo Style và theme.
- Style, theme có sẵn và tự tạo
- Phát triển các phần mềm có style, theme, tài nguyên tương thích nhiều loại màn hình khác nhau
Mục tiêu:
+ Biết cách đăng kí tài khoản AdMod
+ Hiểu được cách kiếm tiền bằng cách gắn quảng cáo
+ Hiểu được cách đăng ký quảng cáo
+ Biết cách gắn quảng cáo
+ Biết cách quản lý quảng cáo
+ Hiểu được cách nhận tiền từ google

- Đăng ký tài khoản adMod
- Tạo đơn vị quảng cáo trên site adMod
- Gắn quảng cáo vào phần mềm
- Các lỗi thông thường cần phải tránh khi gắn quảng cáo
- Quản lý tài khoản quản cáo
- Cách thức nhận tiền từ quảng cáo
- Phát triển các phần mềm tích hợp quảng cáo google AdMod
Mục tiêu:
+ Biết cách đăng ký tài khoản Google Play
+ Biết cách xuất phần mềm để đưa lên Google Play

- Đăng ký tài khoản Google Play.
- Xuất phần mềm để đưa lên Google Play.
- Keystore
- Tạo phần mềm, khai báo các thông số, upload phần mềm lên Google Play
- Quản lý tài khoản Google Play
- Đóng gói phần mềm và đưa phần mềm lên chợ Google Play