PHT TRIN NG DNG ANDROID TRUNG T M
- Slides: 19
PHÁT TRIỂN ỨNG DỤNG ANDROID TRUNG T M CÔNG NGHỆ PHẦN MỀM ĐẠI HỌC CẦN THƠ NGÔ TƯỜNG D N – NTDAN@CTU. EDU. VN 1
NỘI DUNG Phát triển ứng dụng trên hệ điều hành Android 1. Công cụ phát triển 2. Xây dựng ứng dụng (trò chơi) 3. Công bố ứng dụng lên Google Play 2
DEMO Phát triển ứng dụng cho thiết bị di động 3
MÔI TRƯỜNG PHÁT TRIỂN • Java – JDK 1. 6 trở lên • Android SDK • Eclipse + Android Development Tool (plugin) hay Android studio (0. 8 beta) • Android Virtual Device (AVD) hay Genymotion với Virtual. Box virtual machine 4
MÔI TRƯỜNG PHÁT TRIỂN 5
CÁC BƯỚC X Y DỰNG ỨNG DỤNG 3 4 2 1 Phát triển ứng dụng cho thiết bị di động 6
TRÒ CHƠI BẮN THIÊN THẠCH 1. Cấu trúc game đơn giản 2. Kịch bản game (game play) 3. Kết hợp cảm biến gia tốc Phát triển ứng dụng cho thiết bị di động 7
TRÒ CHƠI ĐƠN GIẢN Phát triển ứng dụng cho thiết bị di động 8
GAME LOOP (CẤU TRÚC) Phát triển ứng dụng cho thiết bị di động 9
KỊCH BẢN 1. Thiên thạch sẽ ngẫu nhiên xuất hiện và bay từ phải qua trái 2. Máy bay có thể bay theo 4 hướng 3. Đạn bắn ra từ máy bay đi từ trái qua phải 4. Đạn trúng thiên thạch sẽ nổ và được tính 1 điểm 5. Thiên thạch chạm máy bay sẽ nổ và trò chơi kết thúc. Phát triển ứng dụng cho thiết bị di động 10
CÀI ĐẶT public class Game. Panel extends Surface. View implements Surface. Holder. Callback, Sensor. Event. Listener public class Main. Activity extends Activity { protected void on. Create(Bundle saved. Instance. State) { super. on. Create(saved. Instance. State); request. Window. Feature(Window. FEATURE_NO_TITLE); get. Window(). set. Flags(Window. Manager. Layout. Params. FLAG_FULLSCREEN, Window. Manager. Layout. Params. FLAG_FULLSCREEN); Game. Panel d = new Game. Panel(this); set. Content. View(d); } Phát triển ứng dụng cho thiết bị di động 11
CÀI ĐẶT public Game. Panel(Context context) { super(context); this. context = context; khoi. Tao. Doi. Tuong. Game(); sensor. Manager = (Sensor. Manager) context. get. System. Service(context. SENSOR_SERVICE); accelerometer. Sensor = sensor. Manager. get. Default. Sensor(Sensor. TYPE_ACCELEROMETER); sensor. Manager. register. Listener(this, accelerometer. Sensor, Sensor. Manager. SENSOR_DELAY_GAME); } public class Game { public void run() { // 30 – 60 lần / phút gamepanel. update(); gamepanel. on. Draw(canvas); } }; Phát triển ứng dụng cho thiết bị di động 12
CHẠM VÀ NGHIÊNG MÀN HÌNH @Override public boolean on. Touch. Event(Motion. Event event) { // tạo viên đạn // phát âm thanh return true; } @Override public void on. Sensor. Changed(Sensor. Event event) { if (event. sensor. get. Type() == Sensor. TYPE_ACCELEROMETER) { // theo y may. Bay. giatoc. X = event. values[1]; // theo x may. Bay. giatoc. Y = event. values[0]; } } Phát triển ứng dụng cho thiết bị di động 13
VA CHẠM A(x 4, y 4) I 2(x 2, y 2) I 1(x 1, y 1) Phát triển ứng dụng cho thiết bị di động B(x 3, y 3) 14
HOÀN THÀNH Phát triển ứng dụng cho thiết bị di động 15
CÔNG BỐ ỨNG DỤNG 1. Đăng ký tài khoản Google developer (25$ - chỉ đăng ký 1 lần) 2. Biên dịch . apk 3. Điền thông tin về ứng dụng 4. Google kiểm duyệt 5. Ứng dụng được công bố trên Google Play Phát triển ứng dụng cho thiết bị di động 16
GIAO DIỆN QUẢN LÝ ỨNG DỤNG Phát triển ứng dụng cho thiết bị di động 17
DOWNLOAD GAME Phát triển ứng dụng cho thiết bị di động 18
CẢM ƠN ! CAN THO UNIVERSITY SOFTWARE CENTER 19