Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
3,49 MB
Nội dung
MỤC LỤC LỜI MỞ ĐẦU DANH MỤC CÁC HÌNH BẢNG DANH MỤC SƠ ĐỒ CHƯƠNG 1: ỨNG DỤNG NGÔN NGỮ VÀ VĂN HÓA NHẬT BẢN Ứng dụng ngôn ngữ văn hóa Nhật Bản phải ứng dụng giúp người học tiếng Nhật cách cụ thể, học từ bảng chữ học từ vựng, ngữ pháp theo giáo trình Không dừng lại việc học, mà người muốn thành thạo tiếng Nhật phải tìm hiểu văn hóa Nhật Bản, mà việc đọc báo tiếng Nhật cách hữu hiệu Qua đó, trước tiên việc quan trọng phải đặt tiêu chí cho ứng dụng 1.1 Đặt vấn đề Ngày nay, smartphone ngày trở nên phổ biến, đặc biệt smartphone chạy hệ điều hành android, phổ biến đến mức 10 người giới có người dùng điện thoại thông minh, đặc biệt hệ điều hành android hệ điều hành di động có lượng người dùng đông đảo với 80% số điện thoại thông minh toàn giới số Ngày nay, việc học ngoại ngữ vấn đề vô quan trọng, đặc biết giới trẻ, thông qua ngoại ngữ mới, có khả học tập, làm việc tốt môi trường quốc tế Và Tiếng Nhật không ngoại lệ, dần trở thành ngôn ngữ đông đảo bạn trẻ Việt Nam học tập năm gần Qua hai vấn đề trên, nhận thấy việc học Tiếng Nhật smartphone điều vô cần thiết, tiện lợi với giới trẻ, họ học lúc nơi, với chi phí thấp, điều thực quan trọng với sinh viên, điều kiện kinh tế eo hẹp ham học học hỏi Từ định viết chương trình ứng dụng học tiếng Nhật hệ điều hành Android 1.2 Mục đích ý nghĩa đề tài - Góp phần tăng tinh thần học tập, tìm hiểu văn hóa Nhật Bản nhiều người dân Việt Nam - Nắm bắt thông tin thời xác - Thúc đẩy phát triển nhiều ứng dụng hữu ích đời sống người kho ứng dụng CH Play Google 1.3 Đề xuất xây dựng ứng dụng Từ việc đặt vấn đề trên, thiết nghĩ cần xây dựng ứng dụng học Tiếng Nhật điện thoại dùng hệ điều hành Android để giải vấn đề đặt Vừa tiết kiệm thời gian, chi phí mà hiệu quả, sử dụng lúc nơi Ứng dụng đáp ứng tốt cho người bắt đầu học, học viên học theo giáo trình Minna no Nihongo 1.3.1 Đối tượng sử dụng hệ thống - Sinh viên trường Đại học chuyên ngành Tiếng Nhật Sinh viên yêu thích Tiếng Nhật, văn hóa nước Nhật Nhân viên văn phòng Những người hạn chế thời gian có nhu cầu học thêm ngoại ngữ 1.3.2 Yêu cầu phần cứng, yêu cầu phần mềm - Yêu cầu phần cứng: • Tối thiểu: hình: 4.7 in, độ phân giải HD • Khuyến cáo: hình 5.2 in, độ phân giải full HD - Yêu cầu phần mềm: • Tối thiểu: Android 4.0 trở lên • Khuyến cáo: Android 4.4.2 1.3.3 Yêu cầu chức - - - Giúp người học tiếng Nhật học từ bảng chữ cái, học hết giáo trình Minna no Nihongo, trình đó, người dùng học hết bảng chữ tiếng Nhật, với vốn từ vựng lượng chữ Hán cấp độ trung – sơ cấp Giúp cho đối tượng người dùng muốn tìm hiểu văn hóa Nhật có nhìn khác quan, tổng quát nhiều mặt đời sống văn hóa, xã hội đất nước Nhật cập nhật nhanh thông tin liên quan đến hợp tác, sách phát triển mối quan hệ nước Việt Nam – Nhật Bản Có website dành cho admin để cập nhật liệu mới, để từ client cập nhật liệu điện thoại 1.3.4 Yêu cầu giao diện - Để người dùng hứng thú với việc học tiếng Nhật smartphone, việc sử dụng hình ảnh đáng yêu, có nguồn gốc từ Nhật Bản khiến người học - hứng thú, tạo cảm giác thân thiện người học, màu xanh da trời làm chủ đạo, tạo cảm giác tốt cho người sử dụng Đối với website dành cho admin, cần tiện lợi, dễ sử dụng, thao tác đơn giản 1.4 Kết luận Về việc đặt yêu cầu đề tài, đặt mục đích, ý nghĩa đề tài giúp cho việc tiếp cận vấn đề, đề xuất cách thức triển khai, phân tích, thiết kế biết rõ trình xây dựng ứng dụng tảng mobile CHƯƠNG 2: TỔNG QUAN VỀ LẬP TRÌNH TRÊN NỀN TẢNG DI ĐỘNG Vài năm trở lại thị trường smartphone, người dùng chứng kiến phát triển mạnh mẽ đơn vị phát triển hệ điều hành cho di động, phát triển công ty phần cứng, cung cấp mẫu smartphone cho thị trường đến công ty phát triển ứng dụng di động, điều cho thấy kỷ nguyên smartphone mở việc bắt kịp xu hướng công nghệ, để từ mang đến trải nghiệm tốt cho người dùng điều mà tất đơn vị phát triển smartphone hướng tới 2.1 Tổng quan lập trình di động Người lập trình ứng dụng cho thiết bị di động truyền thống luôn phải nhớ đầu nguyên tắc "tiết kiệm tối đa tài nguyên" thiết bị, dùng cách để tối ưu hóa độ phức tạp tính toán lượng nhớ cần sử dụng Tuy nhiên, với phát triển nhanh chóng phần cứng, thiết bị di động đại thường có cấu hình tốt, với chip xử lý mạnh mẽ, nhớ (RAM) lớn, khiến việc lập trình cho thiết bị di dộng trở nên dễ dàng hết Các kit phát triển hãng sản xuất hệ điều hành di động thường làm suốt hầu hết tác vụ liên quan đến quản lý nhớ, quản lý tiến trình Lập trình viên quan tâm đến việc tối ưu hóa sử dụng tài nguyên tập trung vào việc "lập trình", phát triển tính cho ứng dụng lập trình cho máy tính cá nhân Tuy nhiên, đặc trưng di động thiết bị đem đến nhiều vấn đề mà người lập trình cần phải quan tâm như: Tính "di động" thiệt bị khiến kết nối mạng trở nên bất ổn định khó kiểm soát Các ứng dụng phụ thuộc nhiều vào kết nối Internet cần ý điểm Lưu lượng Internet trền thiết bị di động thường có chi phí cao so với Internet cố định Điều cần lưu ý phát triển ứng dụng sử dụng nhiều tài nguyên Internet phim trực tuyến, nhạc trực tuyến So với máy tính cá nhân, thiết bị di động đại trang bị thêm nhiều tính giúp việc tương tác với người dùng trở nên thuận tiện (màn hình cảm ứng đa điểm, tương tác giọng nói, cử ), loại kết nối đa dạng (NFC, GPS, 3G, 4G, bluetooth, IR ), cảm biến phong phú giúp trải nghiệm đa dạng (cảm biến ánh sáng, cảm biến tiệm cận, la bàn, cám biến chuyển động, gia tốc kế ) Người lập trình, tùy thuộc vào ứng dụng cụ thể, sử dụng đến tính đặc biệt để đem đến cho người dùng trải nghiệm tốt thiết bị di động Ngoài hãng phát triển hệ điều hành di động làm công cụ phát triển (SDK) môi trường phát triển tích hợp (IDE) thuận tiện cho việc viết mã nguồn, biên dịch, gỡ rối, kiểm thử xuất phần mềm Xét theo thị phần thị trường, ba hệ điều hành phổ biến cho thiết bị di động Google's Android, Apple's iOS Microsoft's Windows Phone Mỗi ứng dụng thành công thường phát triển cho hệ Mỗi hệ có chợ ứng dụng hãng (Google có Google Play Store, Apple có Apple AppStore, Microsoft có Windows Phone Store) với nhiều khách hàng tiềm năng, giúp người phát triển phân phối ứng dụng miễn phí có phí với chi phí định Bảng liệt kê hệ điều hành với ngôn ngữ lập trình IDE phổ biến Bảng 2.: Giới thiệu HĐH di động Ngoài việc phát triển ứng dụng cho hệ điều hành kể trên, lập trình viên lựa chọn thư viện lập trình đa tảng để phát triển ứng dụng, phổ biến ứng dụng đa ứng dụng viết ngôn ngữ Web (HTML5, CSS & Javascript) Trình duyệt web thiết bị di động có đầy đủ tính lẫn hiệu để chạy tốt ứng dụng web đại Một ứng dụng Web đặt máy chủ đóng gói thành native app (ứng dụng cho hệ điều hành) qua số công cụ đóng gói hãng thứ ba Công cụ đóng gói ứng dụng Web cho thiết bị di động phổ biến PhoneGap (http://phonegap.com/), phát triển Nitobi, sau Adobe mua lại PhoneGap cho phép lập trình viên phát triển ứng dụng di động sử dụng ngôn ngữ Web phổ biến (HTML5, CSS3 Javascript), với tính bổ sung, cho phép ứng dụng truy cập vào phần cứng thiết bị gia tốc kế, máy ảnh, GPS đóng gói thành ứng dụng cho nhiều hệ điều hành khác nhau, bao gồm Android, iOS, Blackberry, BlackBerry 10, Windows Phone, Windows 8, Tizen, Bada Tuy nhiên, nhược điểm ứng dụng loại hiệu suất thấp (chạy không "mượt mà" ứng dụng native) không đồng tất trình duyệt Web di động (có thể chạy hiển thị khác hệ điều hành với trình duyệt khác nhau) Việc chọn hệ điều hành/thư viện để phát triển tùy thuộc vào nhiều yếu tố khác mục đích ứng dụng, đối tượng sử dụng, tiềm hệ điều hành, yêu cầu kỹ thuật cụ thể thói quen kỹ lập trình viên Trong khuôn khổ giáo trình này, tập trung sâu vào việc phát triển ứng dụng cho hệ điều hành di động phổ biến - Google's Android Tổng quan hệ điều hành Android Android mộ hệ điều hành di động mã nguồn mở miễn phí ưa chuộng giới dựa tảng Linux kernel Google phát triển dành cho dòng điện thoại Smartphone máy tính bảng Tháng 11/2007, Liên minh thiết bị cầm tay mở rộng (Open Handset Alliance) với đồng thuận Texas Instruments, Tập đoàn Broadcom, Google, HTC, Intel, LG, Tập đoàn Marvell Technology, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel T-Mobile thành lập với mục đích phát triển tiêu chuẩn mở cho thiết bị di động Từ tháng 10/2008, hệ điều hành Android thức trở thành phần mềm mã nguồn mở Theo đó, công ty thứ ba phép thêm ứng dụng của riêng họ vào Android bán chúng Đến năm 2010, số lượng smartphone tảng Android tăng trưởng mạnh mẽ Hàng loạt nhà sản xuất hàng đầu bắt tay sản xuất smartphone Samsung, HTC, Motorola… 2.1.1 Cấu trúc, công nghệ áp dụng hệ điều hành android Hệ điều hành Android có tầng tầng Application, tầng Application Framework, tầng Libraries & Android runtime, tầng cuối Linux kernel Hình 2.: Cấu trúc hệ điều hành Android Application Đây tầng ứng dụng giao tiếp với người dùng, bao gồm ứng dụng cài đặt gắn liền với hệ điều hành như: phone, contacts, web, SMS, Calendar … Các ứng dụng tầng Application phát triển ngôn ngữ java, phần mở rộng file apk Khi ứng dụng chạy, có phiên Virtual Machine dựng lên để phục vụ cho Nó Active Program: chương trình có giao diện với người sử dụng Background: chương trình chạy dịch vụ Application Framework Tầng cung cấp tảng phát triển ứng dụng mở xây dựng công cụ phần tử mức cao qua cho phép nhà phát triển ứng dụng nhanh chóng xây dựng ứng dụng khả tạo ừng dụng phong phú Các lợi ích mà tầng cung cấp cho nhà phát triển: 10 Với nhà sản xuất phần cứng điện thoại: tùy biến hệ điều hành để phù hợp với cấu hình phần cứng điện thoại mà họ sản xuất để có nhiều mẫu mã điện thoại để phù hợp với thị hiếu người tiêu dùng Với nhà phát triển ứng dụng: Cho phép lập trình viên sử dụng API tầng mà không cần phải hiển rõ cấu trúc bên Một tập hợp API hữu ích xây dựng sẵn hệ thống định vị, dịch vụ chạy nền, liên lạc ứng dụng, thành phần giao diện, điều tạo điều kiện thuận lợi cho lâp trình viên làm việc họ cần quan tâm đến nội dung mà ứng dụng họ mà không cần phải quan tâm đến thứ liên quan khác Các thành phần Application Framework - Activity Manager: Quản lý chu kỳ sống ứng dụng cung - cấp công cụ điều khiển Activity Telephony Manager: Cung cấp công cụ để thực việc liên lạc gọi điện - thoại Location Manager: Cho phép xác định vị trí điện thoại dựa vào hệ thống - định vị toàn cầu GPS Google Maps Window Manager: Quản lý việc xây dựng hiển thị giao diện người - dùng tổ chức quản lý giao diện ứng dụng Notication Manager: Quản lý việc hiển thị thông báo tin nhắn, - email… Resource Manager: Quản lý tài nguyên tĩnh ứng dụng bao gồm - file hình ảnh, âm thanh, layout View System: dùng để xây dựng giao diện ứng dụng bao gồm - văn bản, nút bấm web nhúng Content Providers :Cho phép truy cập liệu từ ứng dụng khác quản lý danh bạ chia liệu riêng Libraries & Android runtime Libraries chứa thư viện viết C/C++ để phần mềm sử dụng Những tính cung cấp cho lập trình viên thông qua framework Android, thư viện tập hợp thành số nhóm như: System C library: thư viện dựa chuẩn C, sử dụng hệ điều hành - Media Libraries: Có nhiều codec để hỗ trợ việc phát ghi lại loại định dạng âm thanh, hình ảnh, video 11 - LibWebCore: Đây thành phần để xem nội dung web, sử dụng để xây dựng phần mềm duyệt web (Android Browse) ứng dụng nhúng vào - web Nó hỗ trợ công nghệ HTML5, javaScript, CSS, Flash… Surface Manager: quản lý truy cập vào hệ thống hiển thị tổng hợp đồ - họa 2D 3D lớp từ nhiều ứng dụng thiết bị SGL: công cụ đồ họa 2D 3D libraries: Dựa OpenGL ES 1.0 API, dùng để tăng tốc phần cứng 3D - để tối ưu hóa phần mềm 3D SQLite : Hệ sở liệu dùng cho tất ứng dụng Android runtime Phần chứa thư viện mà chương trình viết ngôn ngữ Java hoạt động Phần có phận tương tự mô hình chạy Java máy tính: - Các thư viện lõi (Core Library) chứa lớp Java IO, collections, File - Access Một máy ảo java (Dalvik Virtual Machine) Linux kernel Hệ điều hành Android phát triển dựa nhân Linux phiên 2.6 Tất hoạt động điện thoại muốn thi hành thực mức cấp thấp lớp bao gồm quản lý nhớ (Memory Management), giao tiếp với phần cứng (Driver model), thực bảo mật (Security), quản lý tiến trình (Process) Các thành phần chủ yếu tầng này: - Display Driver: Điều khiển việc hiển thị lên thu nhận - điều khiển người dùng lên hình (di chuyển, cảm ứng…) Camera Driver: Điều khiển hoạt động camera, nhận luồng liệu từ - camera trả Keypad Driver: Điều khiển bàn phím Wifi Driver: Điều khiển việc thu phát song Wifi Audio Driver: Điều khiển thu phát song âm thanh, giải mã tín hiệu - dạng audio thành tín hiệu ngược lại Binder IPC Driver : Chịu trách nhiệm việc kết nối liên lạc với mạng vô tuyến CDMA, GSM, 3G, 4G để đảm bảo chức truyền thông - thực Power Madagement: Giám sát việc tiêu thụ lượng Flash Memory Driver: Điều khiển quản lý nhớ 12 2.1.2 Các thành phần Android Project Activity: Có thể nói thành phần tối quan trọng ứng dụng Android Activity đảm nhiệm công việc tạo cửa sổ (window) để người lập trình đặt lên giao diện thông qua phương thức setContentView(View), phương thức gọi phương thức onCreate() class extends từ Activity Activity tạo nhiều loại cửa sổ khác như: full screen windows (toàn hình), floating (khi dùng windowsIsFloating), nằm lồng bên Activity khác sử dụng ActivityGroup Khi Class kế thừa từ Activity viết đè hai phương thức là: - onCreate(Bundle) viết lệnh khởi tạo activity, nạp giao diện, khởi gọi widget, gọi phương thức xử lý ứng dụng… - onPause() viết lệnh giải kiện người dùng thoát khỏi activity (lúc liệu người dùng thường lưu trữ lại ContentProvider) Mỗi activity mà muốn hoạt động, phải khai báo trong file AndroidMaintifest.xml, viết tag activity Qua ta thấy vòng đời ứng dụng android vòng đời Activity, để hiểu rõ vòng đời bạn xem trước Service: thành phần luôn chạy ẩn hệ thống android mà người dùng thấy Service dùng để cập nhật liệu, đưa cảnh báo cần thiết, chơi nhạc,… ví dụ đơn giản bạn mở hát sau mở trình duyệt web giao diện trình duyệt giao diện chơi nhạc biến hát chơi nhờ có service Tóm lại, service tác vụ (task) chạy ngầm hệ thống android nhằm thực công việc Cũng Activity, class kế thừa từ Service phải khai báo thẻ file AndroidMaintifest.xml Service tác vụ nên có vòng đời Activity có kiểu vòng đời với kiểu ta có cách khởi tạo service riêng để hiểu rõ service có hướng dẫn cụ thể cách tạo service quản lý 13 Broadcast Receiver: Đây thành phần phổ biến, chạy ngầm hệ thống android với mục đích thu thập Intent thông báo từ hệ điều hành ví dụ như: có sms gửi đến, pin yếu, có gọi,… Ví dụ đơn giản cho dễ hiểu: bạn viết ứng dụng nhắn tin bạn cần đặt vấn đề làm để biết có tin vừa gửi đến, Broadcast Receiver làm điều này, luôn lắng nghe xem có thông tin từ hệ thống không có thông tin mà bạn mong muốn thông báo cho bạn Content Provider: Là kho liệu chia sẻ cung cấp cách truy cập liệu giúp chia sẻ liệu ứng dụng Android cung cấp sẵn cho lập trình viên số kiểu content providers cho loại liệu phổ dụng thông tin danh bạ, liệu lưu trữ SQL Lite, liệu lưu trữ tập tin Ngoài ra, lập trình viên tự định nghĩa kiểu Content Providers Để hoạt động Content Provider cần phải khai báo AndroidMaintifest.xml Intent: Intent thành phần tối quan trọng ứng dụng android, định dạng chuẩn dùng để đưa liệu lên khởi tạo Activity hay truyền liệu Activity, chí truyền liệu ứng dụng thực thi, dùng để khởi tạo Service Ví dụ: Khi bạn mở trang web, phải có thành phần gửi liệu để tạo activity hiển thị trang web, intent Notification: Nó đưa thông báo ứng dụng android thực thi không làm ảnh hưởng đến ứng dụng thực thi Thông thường lập trình viên hay dùng dạng thông báo Toast AlertDialog 2.2 Đặc điểm hệ điều hành Android Không phải ngẫu nhiên mà hệ điều hành Android lại chiếm đến 75% thị phần Smartphone Để có thành hẳn hệ điều hành Android có điểm mạnh lợi riêng so với hệ điều hành khác IOS, WindowPhone, BlackBerry … 2.2.1 Ưu điểm hệ điều hành Android 2.2.1.1 Mã nguồn mở Trong hệ điều hành iOS, WindowPhone sử dụng mã nguồn đóng Android lại ngược lại cách mở mã nguồn cung cấp cho người dùng tùy ý 14 chỉnh sửa, “xào nấu” mà can thiệp hay cấm cản từ Google Do đó, trước nhà sản xuất lớn Samsung, Sony, LG, HTC, Oppo … cài đặt hệ điều hành Android thiết bị họ tinh chỉnh bổ sung nhiều thứ từ giao diện, đến vô số tính thông minh, tiện lợi Hình 2.2: Mỗi hãng có cách tùy biến giao diện khác Thêm điều mà hệ điều hành khác iOS, WindowPhone việc tự thiết kế giao diện hình HomeScreen Bạn tự kéo thả icon, 2.2.1.2 Giá hợp lý từ bình dân đến cao cấp Mức giá để sở hữu thiết bị vấn đề mà không người quan tâm đến Với thiết bị Android, khoảng từ – 20 triệu đồng, bạn có muôn vàn lựa chọn, từ thiết bị bình dân vừa túi tiền đến thiết bị cao cấp sở hữu vô số tính hữu ích Trên thị trường có nhiều hãng điện tử Samsung, LG, Sony, Lenovo, Oppo, Huawei … tung hàng loạt sản phẩm đủ kích cỡ, đủ mức giá người dùng có nhiều để lựa chọn so với thiết bị sử dụng hệ điều hành khác 2.2.1.3 Kho ứng dụng Google Play Store đồ sộ Trước đây, mắt kho ứng dụng Google Play vỏn vẹn có số ứng dụng Nhưng đến nay, kho ứng dụng đạt đến 650.000 ứng dụng, có nhiều ứng dụng miễn phí mà vô tiện dụng Đây lý để giải thích cho phát triển chóng mặt hệ điều hành Android giới di động Nếu bạn 15 sử dụng thiết bị Android, hẳn bạn bận tâm “thiếu ứng dụng để cài” mà bạn bận tâm “không đủ nhớ để cài” 2.2.2 Nhược điểm hệ điều hành Android 2.2.2.1 Khả dọn rác Sau thời gian sử dụng thiết bị Android, liệu ứng dụng lưu nhớ đệm, mà máy trình tự động để dọn dẹp chúng Những liệu không dọn dẹp nằm chiếm nhớ máy, đặc biệt nhớ RAM, sử dụng thiết bị có nhớ RAM thấp bạn thường xuyên gặp phải tình trạng giật, lag sử dụng Tuy nhiên, nhược điểm có cách để khắc phục, máy không tự “quét nhà” bạn phải “quét” cách cài đặt ứng dụng dọn dẹp như: History Eraser, Android System Cleaner, Clean MasterNhưng vấn đề giật, lag gặp máy có cấu hình thấp, máy tầm trung cao cấp tượng 2.2.2.2 Quá nhiều phiên dẫn đến việc phân mảnh Sơ đồ 2.: Sơ đồ thể thiết bị chạy phiên Android “Đem bỏ chợ” mà đa phần người dùng than phiền Google sử dụng hệ điều hành Android phiên cũ không hỗ trợ nâng cấp lên phiên Do tốc độ phát triển nhanh, kèm theo việc nâng cấp phiên thường xuyên dẫn đến việc có nhiều phiên Android thị trường Thêm vào nhiều hãng sử dụng hệ điều hành Android mà hỗ trợ nâng cấp hết cho tất thiết bị Một phần dễ hiểu họ chạy theo tập trung phát triển cho nên việc bỏ quên thiết bị cũ không tránh khỏi 16 2.2.2.3 Bảo mật Do đặc điểm mã nguồn mở, nên điều kiện để người có ý đồ xấu tìm hiểu khai thác lỗ hổng bảo mật thiết bị Android Ví dụ: trước có ứng dụng tên iCalendar ứng dụng lịch báo thông thường với icon hiệu ứng lạ mắt, ẩn bên đoạn mã độc dùng để “móc túi” người dùng, đoạn mã độc tự động gửi tin nhắn tổng đài định sẵn chạm lần hình mà người dùng không hay biết Sau vụ việc phát ứng dụng bị gỡ bỏ khỏi Google Play Dần dần qua phiên bản, Google cải thiện khả bảo mật, “liệu có tồn lỗ hổng không?” chưa thể trả lời xác 2.3 Tổng quan quy trình hoạt động ứng dụng hệ điều hành Android Windows trì chương trình, “đối đãi” với chúng dù bạn có thu nhỏ cửa sổ iOS cho phép ứng dụng hoạt động thời điểm Android nằm giữa, ứng dụng chạy ưu tiên ứng dụng khác không bị “siết chặt” iOS 2.3.1 Hệ thống phân cấp Thứ bậc process Android chia thành cấp theo mức độ quan trọng từ cao đến thấp: Foreground process (tạm dịch: tiến trình bật): Đây process dùng để chạy ứng dụng (app) bạn dùng Những process khác xem foreground chúng có liên hệ trức tiếp với process “xử lý” app chạy Tại thời điểm có vài foreground process mà Visible process (tạm dịch: tiến trình nhìn thấy được): Visible process không liên quan đến app chạy có tác động đến thể hình Ví dụ, foreground process có tính “trong suốt” (transparent) ứng dụng hiển thị đằng sau visible process Dễ thấy cài theme hỗ trợ khả “làm mờ” ứng dụng “ghim” ứng dụng lên hình Service process (tạm dịch: tiến trình dịch vụ): Tiến trình dạng không liên quan đến ứng dụng chạy “dưới” chạy Chúng thực công việc cách âm thầm chơi nhạc hay tải tập tin Ví dụ bạn nghe nhạc muốn chuyển sang chơi game, bạn mở game lúc process phát nhạc trở thành service process, tiếp tục chơi nhạc bạn làm việc khác 17 Background process (tạm dịch: tiến trình nền): Background process không xuất hiện, không thực vai trò dễ nhận (như chơi nhạc), chúng không ảnh hưởng đến trải nghiệm sử dụng Tại thời điểm, có nhiều background process chạy bạn xem chúng ứng dụng “tạm dừng” Background process sử dụng RAM, cho phép bạn nhanh chóng chuyển đổi trở lại không sử dụng thêm tài nguyên phần cứng khác Ví dụ dùng Chrome bấm phím Home, Chrome trở thành background process mở lại Chrome, mở lại tab xem 2.3.2 Tính tự động quản lý tiến trình Android Android có khả quản lý process cách tự động, bạn không cần cài đặt ứng dụng “quản lý ứng dụng” Khi cần nhiều tài nguyên, Android tự động xóa process quan trọng nhất, empty background process Khi cần nhiều tài nguyên lúc chơi game nặng, hệ thống tự động loại bỏ thêm service process Chơi game nặng, nhạc bạn tự tắt, tập tin tải tự động dừng Trong đa số trường hợp, bạn không cần lo lượng RAM máy Nhiều người lo máy RAM “đổ thừa” cho hệ thống không Cơ chế quản lý thông minh Android tự động lưu giữ ứng dụng liệu khác RAM cho bạn trải nghiệm tốt Dĩ nhiên, linh hoạt có điểm yếu Nếu ứng dụng lập trình không tốt, service process tiếp tục sử dụng tài nguyên CPU RAM khiến máy nóng lên tụt pin nhanh chóng Về mặt kĩ thuật, tình trạng gọi “memory leaked” (rò rỉ nhớ) 2.4 Kết luận Qua việc tìm hiểu việc lập trình tảng di dộng, đặc biệt hệ điều hành Android, hiểu ưu, nhược điểm nó, hoàn toàn xây dựng ứng dụng tốt cho người dùng, đem lại cho người dùng trải nghiệm tốt Hình 4.18: Giao diện đọc báo 18 2.4.1 Giao diện tìm kiếm địa điểm Hình 4.19: Giao diện tìm kiếm địa điểm 2.5 Cài đặt thử nghiệm chương trình 2.5.1 Môi trường cài đặt 2.5.1.1 Môi trường cài đặt Website - Website xây dựng Visual Studio 2012, ngôn ngữ ASP.NET Cơ sở liệu xây dựng SQL Server 2008 Cài đặt website hosting ASP.NET somme.com 2.5.1.2 Môi trường cài đặt Ứng dụng - Yêu cầu phần cứng: • Tối thiểu: hình: 4.7 in, độ phân giải HD • Khuyến cáo: hình 5.2 in, độ phân giải full HD - Yêu cầu phần mềm: • Tối thiểu: Android 4.0 trở lên • Khuyến cáo: Android 4.4.2 19 2.5.2 Thu thập liệu 2.5.2.1 Dữ liệu từ vựng Dữ liệu từ vựng thu thập, biên soạn từ giáo trình Minano Nihongo Tập Với 25 học giáo trình, với số lượng từ vựng phong phú, giúp ích nhiều cho người học việc học tập củng cố kiến thức Hình 4.20: Giáo trình Minano Nihongo Dữ liệu từ vựng thêm vào database SQLite, bảng learnjapanes với 914 ghi với nghĩa tiếng Việt, tiếng Nhật, học số hệ thống hóa lượng từ vựng có giáo trình 20 Hình 4.21: Dữ liệu từ vựng SQLite 2.5.2.2 Dữ liệu ngữ pháp Dữ liệu ngữ pháp thu thập, biên soạn từ giáo trình Minano Nihongo Tập Với 25 học giáo trình, với số lượng mẫu câu phong phú, giúp ích nhiều cho người học việc học tập củng cố kiến thức ngữ pháp Tiếng Nhật Dữ liệu từ vựng biên soạn thành 25 file HTML, sau hiển thị lên WebView 21 Hình 4.22: Dữ liệu ngữ pháp 2.5.2.3 Dữ liệu đọc báo Dữ liệu đọc báo lấy từ Rss trang NHK với chuyên đề: tin chính, trị, văn hóa, xã hội, kinh tế, ngoại giao… Hình 4.23: Dữ liệu RSS trang NHK 2.5.2.4 Dữ liệu địa điểm - Dữ liệu địa điểm quản trị viên thêm vào SQL server quan trang quản trị Các địa điểm quản trị viên tìm kiếm cách: tìm kiếm địa điểm 22 người đánh giá cao, có trang web hiển thị địa điểm - Tọa độ địa điểm tìm đồ Google Map với độ chi tiết xác cao, thuận lợi cho việc tính toán hiển thị 2.5.3 Thử nghiệm đánh giá chương trình 2.5.3.1 Thử nghiệm - Các chức quản trị địa điểm, thông tin địa điểm, loại địa điểm chạy ổn định, không phát sinh lỗi, đáp ứng tốt yêu cầu đề website quản trị địa điểm Admin - Đối với ứng dụng: chức chạy ổn định, không phát sinh lỗi, đáp ứng tốt yêu cầu đặt Các chức đòi hỏi kết nối network hay GPS có kiểm tra kết nối trước thực yêu cầu, Nhiều lỗi người dùng kiểm tra trước thực hiện, tránh lỗi phát sinh 2.5.3.2 Đánh giá kết Về chương trình đạt số kết định: - Tìm hiểu áp dụng việc viết chương trình hệ điều hành Android - Tìm hiểu quy trình, học nghiên cứu tiếng Nhật - Thời gian xử lý yêu cầu nhanh kết xác - Các chức hệ thống website ứng dụng hoạt động tốt - Giao diện thân thiện, dễ sử dụng 2.6 Kết luận Từ việc phân tích thiết kê, xây dựng chương trình hoàn chỉnh, đến việc cài đặt chương trình, kiểm thử, cho thấy ứng dụng hoạt động tốt, đáp ứng tốt yêu cầu mà đặt vấn đề đưa Tạo tiền đề cho việc phát triển ứng dụng sau hoàn thiện trình nâng cấp 23 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Báo cáo “Xây dựng ứng ngôn ngữ văn hóa Nhật Bản” đề tài rộng, kiến thức lĩnh vực nặng tính chuyên môn Trong thời gian nghiên cứu tìm hiểu, thực báo cáo, em cố gắng để hoàn thành việc tìm hiểu mong muốn người dùng ứng dụng tiện ích, hiệu tiết kiệm đồng thời mang lại hiệu cao cho người dùng Không hệ thống đáp ứng nhu cầu cập nhật tin tức nhiều mặt đời sống xã hội Nhật cho nhiều người, sinh viên quan tâm đến văn hóa, ngôn ngữ Nhật Để đưa đến người dùng chức trải nghiệm tốt đưa ứng dụng lên Google Play tương lai, dựng định có thêm module giúp hỗ trợ tốt cho người dùng: tìm kiếm địa điểm theo tên, học tiếng Nhật qua đoạn văn ngắn Và tính này, hoàn thiện thời gian tới 24 TÀI LIỆU THAM KHẢO Tiếng Việt [1] ThS Trương Thị Ngọc Phượng, “Giáo trình lập trình Android”, Đại học Quốc gia Tp.HCM [2] Lê Hoàng Sơn, “Giáo trình lập trình Android”, NXB Xây dựng [3] Đỗ Lâm Thiên, “Lập trình ứng dụng Web với ASP.NET”, Đại học quốc gia thành phố Hồ Chí Minh, trường Đại học khoa học tự nhiên [4] ThS Nguyễn Minh Đạo, ”Giáo trình lập trình web với ASP.NET”, Trường đại học sư phạm kỹ thuật thành phố Hồ Chí Minh Tiếng Anh: [5] Kyle Merrifield Mew, “Android 3.0 Application Development Cookbook” [6] Lauren Darcey and Shane Conder, “SamsTeach Yourself Android ™ Application Development Second Edition 24 in Hours” [7] Marziah Karch, “Android for Work Productivity for Professionals” [8] Johannes Knutsen, “Web Service Clients on Mobile Android” Website: [9] [10] [11] [12] [13] http://developer.android.com/guide/developing http://www.androidhive.info/ http://www3.nhk.or.jp/nhkworld/vietnamese/top/ http://asp.net.vn/ http://diendan.congdongcviet.com/forums 25 [...]... Manager: Quản lý các chu kỳ sống của một ứng dụng cũng như cung - cấp công cụ điều khiển các Activity Telephony Manager: Cung cấp công cụ để thực hiện việc liên lạc gọi điện - thoại Location Manager: Cho phép xác định vị trí của điện thoại dựa vào hệ thống - định vị toàn cầu GPS và Google Maps Window Manager: Quản lý việc xây dựng và hiển thị các giao diện người - dùng cũng như tổ chức quản lý các giao... dụng Notication Manager: Quản lý việc hiển thị các thông báo như tin nhắn, - email… Resource Manager: Quản lý tài nguyên tĩnh của các ứng dụng bao gồm các - file hình ảnh, âm thanh, layout View System: được dùng để xây dựng giao diện một ứng dụng bao gồm các - văn bản, nút bấm và cả những web nhúng Content Providers :Cho phép truy cập dữ liệu từ các ứng dụng khác như quản lý danh bạ hoặc chia sẽ dữ... bấm phím Home, Chrome trở thành background process và khi mở lại Chrome, nó cũng lập tức mở lại tab đang xem 2.3.2 Tính năng tự động quản lý tiến trình của Android Android có khả năng quản lý process một cách tự động, do đó bạn không cần cài đặt bất kì ứng dụng quản lý ứng dụng” nào Khi cần nhiều tài nguyên, Android tự động xóa các process ít quan trọng nhất, bắt đầu từ empty và background process... trên nhân của Linux phiên bản 2.6 Tất cả mọi hoạt động của điện thoại muốn thi hà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ớ (Memory Management), 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) Các thành phần chủ yếu của tầng này: - Display Driver: Điều khiển việc hiển thị lên màn hình cũng như thu nhận - những điều... với những chuyên đề: tin chính, chính trị, văn hóa, xã hội, kinh tế, ngoại giao… Hình 4.23: Dữ liệu RSS của trang NHK 2.5.2.4 Dữ liệu địa điểm - Dữ liệu địa điểm được quản trị viên thêm vào SQL server quan trang quản trị Các địa điểm được quản trị viên tìm kiếm bằng cách: tìm kiếm những địa điểm 22 được mọi người đánh giá cao, cũng như có trang web hiển thị đối với địa điểm đó - Tọa độ địa điểm được tìm... nó cũng có vòng đời như Activity nhưng có 2 kiểu vòng đời với mỗi kiểu ta có một cách khởi tạo service riêng để hiểu rõ hơn về service thì mình sẽ có một bài hướng dẫn cụ thể về cách tạo service và quản lý nó 13 Broadcast Receiver: Đây là thành phần phổ biến, nó luôn chạy ngầm trong hệ thống android với mục đích thu thập các Intent thông báo từ hệ điều hành ví dụ như: có một sms gửi đến, pin yếu, có... phần để xem nội dung trên web, được sử dụng để xây dựng phần mềm duyệt web (Android Browse) và các ứng dụng nhúng vào - web Nó hỗ trợ các công nghệ như HTML5, javaScript, CSS, Flash… Surface Manager: quản lý truy cập vào các hệ thống hiển thị và tổng hợp đồ - họa 2D và 3D các lớp từ nhiều ứng dụng trên thiết bị SGL: công cụ đồ họa 2D cơ bản 3D libraries: Dựa trên OpenGL ES 1.0 API, dùng để tăng tốc phần... bạn sẽ tự tắt, tập tin tải về tự động dừng Trong đa số trường hợp, bạn không cần lo về lượng RAM của máy Nhiều người lo rằng máy mình chỉ còn 1 ít RAM và “đổ thừa” cho hệ thống là không đúng Cơ chế quản lý thông minh của Android tự động lưu giữ các ứng dụng và dữ liệu khác trên RAM cho bạn trải nghiệm tốt nhất có thể Dĩ nhiên, sự linh hoạt cũng có điểm yếu Nếu một ứng dụng được lập trình không tốt,... việc kết nối và liên lạc với mạng vô tuyến CDMA, GSM, 3G, 4G để đảm bảo những chức năng truyền thông được - thực hiện Power Madagement: Giám sát việc tiêu thụ năng lượng Flash Memory Driver: Điều khiển quản lý bộ nhớ 12 2.1.2 Các thành phần trong một Android Project Activity: Có thể nói đây là thành phần tối quan trọng của bất kì ứng dụng Android nào Activity đảm nhiệm công việc tạo ra một cửa sổ (window)... chính xác cao, thuận lợi cho việc tính toán và hiển thị 2.5.3 Thử nghiệm và đánh giá chương trình 2.5.3.1 Thử nghiệm - Các chức năng quản trị về địa điểm, thông tin địa điểm, và loại địa điểm chạy ổn định, không phát sinh lỗi, đáp ứng tốt yêu cầu đề ra đối với website quản trị địa điểm của Admin - Đối với ứng dụng: các chức năng chạy ổn định, không phát sinh lỗi, đáp ứng tốt yêu cầu đặt ra Các chức ... HÌNH BẢNG DANH MỤC SƠ ĐỒ CHƯƠNG 1: ỨNG DỤNG NGÔN NGỮ VÀ VĂN HÓA NHẬT BẢN Ứng dụng ngôn ngữ văn hóa Nhật Bản phải ứng dụng giúp người học tiếng Nhật cách cụ thể, học từ bảng chữ học từ vựng, ngữ. .. phát triển nhiều ứng dụng hữu ích đời sống người kho ứng dụng CH Play Google 1.3 Đề xuất xây dựng ứng dụng Từ việc đặt vấn đề trên, thiết nghĩ cần xây dựng ứng dụng học Tiếng Nhật điện thoại dùng... hiểu văn hóa Nhật có nhìn khác quan, tổng quát nhiều mặt đời sống văn hóa, xã hội đất nước Nhật cập nhật nhanh thông tin liên quan đến hợp tác, sách phát triển mối quan hệ nước Việt Nam – Nhật Bản