Đề tài Lập trình đa phương tiện (Multimedia) trên nền tảng Android

Nói về ý nghĩa và tầm quan trọng của điện thoại di động (ĐTDĐ), chúng ta có thể tóm gọn rằng đây là phương tiện liên lạc cá nhân không thể thiếu trong cuộc sống hàng ngày. Vì quá hiện đại, quá nhiều tính năng mà người ta có thể tích hợp vào ĐTDĐ. Ngày nay, ĐTDĐ đang ngày càng khẳng định vai trò sống còn của mình trong xã hội phát triển đặc biệt với thế hệ những người trẻ tuổi, năng động. Nó gắn bó với cuộc sống đến mức ngoài chức năng của một phương tiện liên lạc, ĐTDĐ đã trở thành phương tiện để giải trí với nhiều chức năng hấp dẫn, phương tiện lưu giữ những thông tin cá nhân một cách an toàn dù chỉ tương đối. Hệ điều hành Android nổi bật với khả năng hoạt động ổn định và linh hoạt, có thể chạy nhiều ứng dụng một lúc linh hoạt, mượt mà. Android còn hỗ trợ cài đặt không giới hạn số lượng tài khoản email. Bạn có thể cài cả account mail cá nhân như Gmail hoặc các mail outlook phục vụ cho công việc. Với một bộ công cụ phát triển phần mềm (SDK) linh động, số lượng các ứng dụng dành cho Android đang tăng từng ngày. Ngoài ra, các nhà phát triển ứng dụng còn có thể làm việc với các hãng sản xuất linh kiện để có thể xây dựng các ứng dụng phù hợp và tối ưu đặc biệt dành cho Android. (Chẳng hạn như Gameloft bắt tay cùng Qualcomm để cho ra mắt những tựa game tối ưu cho thế hệ vi xử lý Snapdragon). Có một bộ công cụ phát triển phần mềm (SDK) miễn phí và mã nguồn mở cũng là một điềm mạnh của Android. Mọi người có thể download SDK và tạo các ứng dụng cho riêng mình. Sau đó, các nhà phát triển có thể đăng tải ứng dụng của mình trực tiếp với Android Market của Google, hoặc thông qua các trang chia sẻ ứng dụng thứ ba. Ngoài ra, các nhà phát triển ứng dụng trên Android còn cho phép người dùng phản hồi các ý kiến đóng góp về các sản phẩm của mình, dựa vào đó giúp các sản phẩm được trở nên hoàn thiện và phù hợp với yêu cầu người sử dụng hơn. Đây được xem là điểm mạnh để Android có thể phát triển ứng dụng và game trên nền tảng của riêng mình, giúp vượt lên đối thủ chính là iOS của Apple, vốn có một nền tảng lập trình ứng dụng không được mở và linh hoạt như Android.

docx102 trang | Chia sẻ: ngtr9097 | Lượt xem: 5661 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Đề tài Lập trình đa phương tiện (Multimedia) trên nền tảng Android, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
MỤC LỤC CÁC TỪ VIẾT TẮT ĐTDĐ - Điện thoại di động SDK - Software development kit API - Application programming interface ADT - Android Deverloper Tool ROBOT hay BOT - Xem chương 3 mục 9 TCP/IP - Transmission Control Protocol/ Internet Protocol DANH MỤC HÌNH ẢNH Chương 2 Hình 2.1 Android timeline Trang 15 Hình 2.2: Cấu trúc stack hệ thống Android Trang 19 Hình 2.3: Applications Trang 19 Hình 2.4: Application Framework Trang 20 Hình 2.5: Libraries Trang 21 Hình 2.6: Android Runtime Trang 22 Hình 2.7: Android emulator Trang 23 Hình 2.8: Các phiên bản SDK Trang 23 Hình 2.9: SDK và AVD Manager Trang 24 Hình 2.10: Instal SDK Trang 25 Hình 2.11: Tích hợp Android SDK vào Eclipse Trang 26 Hình 2.12: Tạo một AVD mới Trang 27 Hình 2.13: Chu trình sống của một Service Trang 32 Hình 2.14: Truyền dữ liệu giữa 2 Activity Trang 35 Hình 2.15: Các thuộc tính của Intend Trang 35 Hình 2.16: Các Action đã được định nghĩa sẵn trong Intend Trang 36 Hình 2.17: Chu kỳ sống thành phần Trang 43 Hình 2.18: Activity stack Trang 44 Hình 2.19: Các trạng thái của chu kỳ sống Trang 45 Hình 2.20: Các sự kiện của một ứng dụng Trang 46 Hình 2.21: Các phương thức chu kỳ sống của ứng dụng Trang 47 Hình 2.22: FrameLayout Trang 51 Hình 2.23: LinearLayout Trang 52 Hình 2.24: RelativeLayout Trang 52 Hình 2.25: RelativeLayout Trang 53 Hình 2.26: TableLayout Trang 54 Hình 2.27: TableLayout Trang 55 Hình 2.28: Sơ đồ lớp android.media.MediaPlayer Trang 61 Hình 2.29: new android project Trang 66 Hình 2.30: sơ đồ lớp android.media.Mediarecorder Trang 72 Chương 3 Hình 3.1: Sơ đồ usecase của hệ thống Trang 86 Hình 3.2: Sơ đồ class mức khái niệm mối quan hệ giữa các Activity Trang 87 Hình 3.3: Class GoMoKuGame Trang 88 Hình 3.4: Sơ đồ tuần tự vẽ bàn chơi game online Trang 92 TÓM TẮT Ngày nay, người sử dụng điện thọai di động không chỉ để thực hiện những cuộc gọi thông thường mà còn sử dụng cho nhiều mục đích khác như: tán gẫu, duyệt web, nghe nhạc, và xem truyền hình trực tiếp qua mạng. Ngày nay, điện thọai di động cần phải hỗ trợ được đa phương tiện để được coi là một thiết bị sử dụng đa phương tiện. Trong quyển báo cáo này chúng ta sẽ nghiên cứu làm cách nào để làm cho Android có thể phát tập tin âm thanh, xem video, và ghi lại âm thanh. Một trong những tính năng chính của Android là bạn có thể dễ dàng phát triển các ứng dụng android trên nền tảng ứng dụng di động. Điều này thực sự nổi bật với việc tạo ra các giao diện trực quan hấp dẫn (chẳng hạn như trong chương 3). Trong quyển báo cáo này chúng ta sẽ nghiên cứu làm cách nào để tạo ra giao diện đồ họa bằng cách sử dụng Android’d Graphic API. Nếu bạn đã từng làm việc với đồ họa trong JAVA, bạn có thể sẽ tìm thấy các API đồ họa và cách làm việc với đồ họa trong Android cũng rất quen thuộc. ABSTRACT Today people use their cell phones for almost everything but phone calls, from chatting, to surfing the web, to listening to music, and even to watching live streaming TV. Nowadays cell phones need to support multimedia to even be considered a usable device. In this book we are going to look how you can use Android to play audio files, watch video, and even record sound. One of the main features of Android that you should have picked up on by now is how much easier it is to develop Android applications than mobile application platforms. This really stands out in the creation of visually appealing UIs and metaphors, but there is a limit of what can be done with typical Android UI elements (such as those discussed in chapter 2 head 10). In this chapter we are going to look at how to create graphics using Android’s Graphic API. If you have ever worked with graphics in Java, you will most likely find the Graphics API and how graphics work in Android familiar. CHƯƠNG 1 GIỚI THIỆU TỔNG QUAN GIỚI THIỆU Nói về ý nghĩa và tầm quan trọng của điện thoại di động (ĐTDĐ), chúng ta có thể tóm gọn rằng đây là phương tiện liên lạc cá nhân không thể thiếu trong cuộc sống hàng ngày. Vì quá hiện đại, quá nhiều tính năng mà người ta có thể tích hợp vào ĐTDĐ. Ngày nay, ĐTDĐ đang ngày càng khẳng định vai trò sống còn của mình trong xã hội phát triển đặc biệt với thế hệ những người trẻ tuổi, năng động. Nó gắn bó với cuộc sống đến mức ngoài chức năng của một phương tiện liên lạc, ĐTDĐ đã trở thành phương tiện để giải trí với nhiều chức năng hấp dẫn, phương tiện lưu giữ những thông tin cá nhân một cách an toàn dù chỉ tương đối. Hệ điều hành Android nổi bật với khả năng hoạt động ổn định và linh hoạt, có thể chạy nhiều ứng dụng một lúc linh hoạt, mượt mà. Android còn hỗ trợ cài đặt không giới hạn số lượng tài khoản email. Bạn có thể cài cả account mail cá nhân như Gmail hoặc các mail outlook phục vụ cho công việc.  Với một bộ công cụ phát triển phần mềm (SDK) linh động, số lượng các ứng dụng dành cho Android đang tăng từng ngày. Ngoài ra, các nhà phát triển ứng dụng còn có thể làm việc với các hãng sản xuất linh kiện để có thể xây dựng các ứng dụng phù hợp và tối ưu đặc biệt dành cho Android. (Chẳng hạn như Gameloft bắt tay cùng Qualcomm để cho ra mắt những tựa game tối ưu cho thế hệ vi xử lý Snapdragon). Có một bộ công cụ phát triển phần mềm (SDK) miễn phí và mã nguồn mở cũng là một điềm mạnh của Android. Mọi người có thể download SDK và tạo các ứng dụng cho riêng mình. Sau đó, các nhà phát triển có thể đăng tải ứng dụng của mình trực tiếp với Android Market của Google, hoặc thông qua các trang chia sẻ ứng dụng thứ ba. Ngoài ra, các nhà phát triển ứng dụng trên Android còn cho phép người dùng phản hồi các ý kiến đóng góp về các sản phẩm của mình, dựa vào đó giúp các sản phẩm được trở nên hoàn thiện và phù hợp với yêu cầu người sử dụng hơn. Đây được xem là điểm mạnh để Android có thể phát triển ứng dụng và game trên nền tảng của riêng mình, giúp vượt lên đối thủ chính là iOS của Apple, vốn có một nền tảng lập trình ứng dụng không được mở và linh hoạt như Android. Android là “mỏ vàng” cho các nhà phát triển ứng dụng Với số lượng các ứng dụng miễn phí lớn, cùng với lượng người dùng các ứng dụng đông đảo hơn so với các nền tảng, các nhà phát triển ứng dụng của Android dễ dàng nhận được các khoản đầu tư lớn. Hiện nay, Android đang là sự lựa chọn hàng đầu cho những nhà phát triển ứng dụng mới, và với xu thế này, số lượng ứng dụng và game trên Android sẽ tăng lên đáng kể trong tương lai. Ngày nay, việc chơi game online không còn là nhu cầu giải trí đơn thuần mà nó đã dần trở thành một xu hướng. Nhưng việc xây dựng một game online theo mô hình truyền thống thì quá tốn kém nhất là chi phí để mua sắm một server và chi phí bảo trì server game là rất lớn. IRC là dịch vụ cho phép mọi người trên khắp hành tinh có thể gặp gỡ, trao đổi thông tin với nhau mà không cần phải gặp trực tiếp. Dịch vụ này rất phát triển, có đến hàng triệu người trên khắp thế giới sử dụng dịch vụ này. IRC được xây dựng trên họ giao thức mạng phổ biến nhất là TCP/IP lý do việc sử dụng họ giao thức này là tính chính xác, tin cậy, phổ biến, thích hợp cho các cuộc thảo luận từ xa và nó hoàn toàn miễn phí. Với những tính năng đó của IRC thì chúng ta có thể xây dựng một server game mà ít tốn chi phí hơn, và có thể phục vụ cho nhiều game với cùng một hoặc nhiều server IRC mà không tốn chi phí cho server. Vì vậy vấn đề đặt ra là ta phải xây dựng một giao thức dựa vào server IRC, mà nó có thể cho phép những người khác xây dựng game một cách dể dàng, nhanh chóng, và triệt để tài nguyên hệ thống server IRC bằng cách dựa vào giao thức chúng tôi đã đề ra. Với những ưu điểm trên về cả phần cứng, phần mềm lẫn khả năng phát triển ứng dụng, Android sẽ là hệ điều hành di động dành cho game thủ trong tương lai, trong đề tài này, chúng tôi sẽ xây dựng trò chơi đánh cờ ca rô online trên nền tảng Android và tận dụng sức mạnh của hệ thống server với các vấn đề giải quyết như sau: Một giao thức hỗ trợ xây dựng trò chơi đối kháng dựa trên giao thức IRC, giao thức này sẽ tận dụng tối đa sức mạnh mà server IRC mang lại. Tìm hiểu lập trình mạng trên hệ điều hành Android. Xây dựng trò chơi đánh cờ ca rô hỗ trợ chơi online trên hệ điều hành Android. MỤC TIÊU CẦN ĐẠT ĐƯỢC Mỗi thành viên trong nhóm cần tìm hiểu và thực hiện đề tài riêng cũa mỗi người, sau đó cả nhóm sẽ cùng nhau thực hiện một đề tài chung. Nội dung công việc sẽ được nêu rõ sau đây: Tên đề tài của từng thành viên trong nhóm: Thái Thành Tín thực hiện đề tài - Tìm hiểu cơ chế lập trình mạng dưới Android Trương Thiện Thành thực hiện đề tài - Xây dựng khung nền cho trò chơi trên Android dựa trên giao thức IRC. Lê An thực hiện đề tài - Lập trình đa phương tiện (Multimedia) trên nền tảng Android. Mục tiêu của cả nhóm: Các đề tài sẽ làm việc cộng tác với nhau để xây dựng chương trình minh họa là một trò chơi đối kháng giữa hai người trên hai máy điện thọai di động Android. Cả nhóm chúng tôi quyết định thực hiện trò chơi đánh cờ ca rô online trên thiết bị sử dụng Android. Đây là một đề tài lớn cần có sự phối hợp giữa các thành viên trong nhóm. Nội dung công việc được phân thành những phân hệ cụ thể như sau: Mã phân hệ Tên phân hệ Nội dung cần thực hiện Người thực hiện Thời gian PH00 Xây dựng chương trình minh họa cho trò chơi đối kháng giữa hai người trên hai máy điện thoại Android Xây dựng chương trình minh họa cho trò chơi đối kháng giữa hai người trên hai máy điện thoại Android Cả nhóm 3 tháng PH01 Tìm hiểu cơ chế lập trình mạng dưới Android - Tìm hiểu cơ chế lập trình mạng dưới Android - Cài đặt các giao thức lên trò chơi đánh cờ ca rô online. - Xây dựng BOT quản lý người dùng. Thái Thanh Tín 2 tháng PH02 Xây dựng khung nền trò chơi đối kháng dựa trên giao thức IRC - Tìm hiểu về giao thức IRC, các khái niệm về server, client, channel, channel operator, các khái niệm truyền thông, những quy định về message, quy định về code trong IRC, chi tiết cho từng message. - Tìm hiểu cách thức xây dựng giao thức thông qua website, đề tài luận văn về IRC. - Bắt đầu xây dựng giao thức từ những bước cơ bản nhất và hoàn thiện dần dần. - Cài đặt con bot, dùng xchat, icechat để kiểm tra giao thức vừa cài đặt. Trương Thiện Thành 2 tháng PH03 Lập trình đa phương tiện trên nền tảng Android - Tìm hiểu lập trình đa phương tiện dưới Android. Trong điều kiện thực tế thời gian nghiên cứu có hạn nên tôi chỉ nghiên cứu những thư viện lập trình Multimedia và Graphics hỗ trợ trực tiếp cho việc thiết kế một ứng dụng đơn giản minh họa việc phát tập tin media trên thiết bị Android. - Xây dựng trò chơi đánh cờ ca rô trên nền tảng Android hỗ trợ hai người chơi online trên thiết bị sử dụng Android. - Cài đặt các giao thức lên trò chơi ca rô. Lê An 2 tháng KHÓ KHĂN Việc lập trình đa phương tiện và lập trình game trên nền tảng Android còn quá mới mẻ. Bộ giả lập SDK hỗ trợ tốt cho việc lập trình nhưng còn quá chậm và không hỗ trợ tốt việc lập trình đa phương tiện cho lắm vì một số phần cứng bị giới hạn. Server IRC không hỗ trợ việc quản lý người dùng trên đó nên đó cũng là một khó khăn lớn đối với chúng tôi. HƯỚNG GIẢI QUYẾT Tìm hiểu “trò chơi đối kháng giữa hai người” là gì? Các trò chơi như cờ ca rô, cờ tướng, cờ vua, cờ vây… được gọi là trò chơi đối kháng, nó là trò chơi diễn ra giữa hai đối thủ để giành chiến thắng. Nói chung các trò chơi này đều có một đặc điểm chung là mỗi đối thủ phải tìm đường đi ngắn nhất để giành chiến thắng. Đặc điểm của các trò chơi này như sau: Có hai đối thủ, mỗi đối thủ chỉ đi một nước khi tới lượt. Các đối thủ đều biết thông tin về tình trạng trận đấu. Trận đấu không kéo dài vô tận, mà phải có thắng, thua hoặc hòa. Tìm hiểu cách thức xây dựng trò chơi đối kháng truyền thống. Một mô hình trò chơi đối kháng online truyền thống là một mô hình dạng client-server. Mô hình cần một server game để quản lý thông tin người dùng và hỗ trợ cho game, các client được cài đặt một chương trình chơi game hay còn gọi là game client, các game có thể là cờ tướng, cờ vây, cờ carô, …. Xây dựng kịch bản trò chơi. Nghiên cứu lập trình đa phương tiện trên Android. Xây dựng con robot (bot – xem chương 3 phần 9) để quản lý thông tin người dùng và hỗ trợ game. Thiết kế giao diện, xây dựng game đánh cờ ca rô. Nghiên cứu lập trình mạng trên android. Cài đặt các giao thức vào game, hòan thiện con robot. Viết báo cáo. PHẠM VI ĐỀ TÀI Nội dụng quyển báo cáo này sẽ tập trung chủ yếu vào phần phát triển các ứng dụng đa phương tiện (Multimedia) trên nền tảng Android, đề tài được thực hiện với một số mục tiêu: Nghiên cứu qua kiến trúc của Android. Tìm hiểu bộ phát triển ứng dụng Android SDK. Nghiên cứu lập trình đa phương tiện (Multimedia), lập trình Graphics trên nền tảng Android. Xây dựng chương trình minh hoạ là một trò chơi đối kháng (trò chơi đánh cờ ca rô) giữa hai người trên thiết bị sử dụng hệ điều hành Android. BỐ CỤC CỦA QUYỂN LUẬN VĂN Nội dung quyển luận văn được chia làm 3 chương: Chương 1: Giới thiệu tổng quan Giới thiệu tổng quan về đề tài và sự cần thiết của việc nghiên cứu đề tài này, đồng thời cũng nêu lên mục tiêu và hướng tiếp cận. Cuối cùng là nêu lên tổng quan về nội dung của từng chương trong quyển luận văn này. Chương 2: Phần lý thuyết Trình bày các khái niệm chính trong đề tài cụ thể là: Khái niệm, lịch sử hình thành và phát triển của Android. Tìm hiểu máy ảo Dalvik. Tìm hiểu kiến trúc của Android. Android Emulator. Hướng dẫn cài đặt bộ SDK hỗ trợ lập trình Android với eclipse. Các thành phần tạo nên một ứng dụng của Android. Chu kỳ ứng dụng Android. Tìm hiểu XML trong Android. Tìm hiểu gói Android.media. Tìm hiểu lớp android.media.MediaPlayer và lớp android.media.MediaRecorder làm một ví dụ đơn giản minh họa. Giới thiệu về Android Graphics. Tìm hiểu sử dụng các đối tượng trong gói android.graphics để vẽ. Chương 3 Phần ứng dụng Đặc tả việc xây dựng trò chơi. Các hình ảnh minh họa. Phần thảo luận kết quả, nêu những vấn đề chưa được giải quyết hướng phát triển. CHƯƠNG 2 CƠ SỞ LÝ THUYẾT KHÁI NIỆM, LỊCH SỬ HÌNH THÀNH VÀ PHÁT TRIỂN ANDROID Khái niệm Android Android là hệ điều hành trên các thiết bị di động như: điện thọai di động, máy tính bảng. Android được phát triển bởi Google và dựa trên nền tảng Linux phiên bản 2.6 cho hệ thống dịch vụ cốt lõi như security, memory management, process management, network stack, and driver model. Android có một cộng đồng những nhà phát triển rất lớn viết các ứng dụng cho hệ điều hành của mình. Hiện tại có khoảng 200.000 ứng dụng cho Android os và vào khoảng 100.000 ứng dụng đã được đệ trình, điều này khiến Android trở thành hệ điều hành di động có môi trường phát triển lớn thứ 2. Các nhà phát triển viết ứng dụng cho Android dựa trên ngôn ngữ Java. Google công bố hầu hết các mã nguồn của Android theo bản cấp phép Apache. Hệ điều hành Android bao gồm 12 triệu dòng mã; 3 triệu dòng XML, 2.8 triệu dòng mã C, 2.1 triệu mã Java và 1.75 triệu dòng mã C++. Lịch sử hình thành và phát triển Ban đầu, Android là hệ điều hành cho các thiết bị cầm tay dựa trên nền tảng Linux do công ty Android Inc. (California, Mỹ) thiết kế. Công ty này sau đó được Google mua lại vào năm 2005 và bắt đầu xây dựng Android Platform. Các thành viên chủ chốt tại ở Android Inc. gồm có: Andy Rubin, Rich Miner, Nick Sears, and Chris White. Hình 2.1 Android timeline Và sau tiếp, vào cuối năm 2007, thuộc về Liên minh Thiết bị Cầm tay Mã Nguồn mở (Open Handset Alliance) gồm các thành viên nổi bật trong ngành viễn thông và thiết bị cầm tay như: Texas Instruments, Broadcom Corporation, Google, HTC, Intel, LG, Marvell Technology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel, T-Mobile, ARM Holdings, Atheros Communications, Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, and Vodafone Group,… Mục tiêu của Liên minh này là nhanh chóng đổi mới để đáp ứng tốt hơn cho nhu cầu người tiêu dùng và kết quả đầu tiên của nó chính là nền tảng Android. Android được thiết kế để phục vụ nhu cầu của các nhà sản xuất thiết, các nhà khai thác và các lập trình viên thiết bị cầm tay. Android là hệ thống nền tảng phần mềm dành cho điện thoại di động bao gồm hệ điều hành, các phần tử giao tiếp trung gian (midleware) và các ứng dụng chính (key applications). Nền tảng di động Android của Goolge ngày càng trở nên hiện thực và đang là một đối thủ nặng ký cho những gã khổng lồ như Microsoft, Apple, RIM,... Cuộc chiến đã rõ ràng hơn khi mà Google tung ra bộ công cụ phát triển phần mềm SDK (Software Development Kits) cho Android. Bộ SDK sẽ giúp các nhà phát triển phần mềm hiểu rõ hơn về Android và tạo nên các sản phẩm phần mềm cho dòng thiết bị này. Bộ SDK được thiết kế để cho phép các nhà phát triển “mở rộng, thay thế, tái sử dụng” các thành phần phần mềm, có nhiều công cụ debug, thư viện, dự án mẫu. Có một plug-in tích hợp SDK với nền tảng phát triển Eclipse (từ Eclipse 3.2 trở về sau). Phiên bản SDK lần đầu tiên phát hành vào tháng 11 năm 2007, hãng T-Mobile cũng công bố chiếc điện thoại Android đầu tiên đó là chiếc T-Mobile G1, chiếc smartphone đầu tiên dựa trên nền tảng Android. Một vài ngày sau đó, Google lại tiếp tục công bố sự ra mắt phiên bản Android SDK release Candidate 1.0. Trong tháng 10 năm 2008, Google được cấp giấy phép mã nguồn mở cho Android Platform. Khi Android được phát hành thì một trong số các mục tiêu trong kiến trúc của nó là cho phép các ứng dụng có thể tương tác được với nhau và có thể sử dụng lại các thành phần từ những ứng dụng khác. Việc tái sử dụng không chỉ được áp dụng cho cho các dịch vụ mà nó còn được áp dụng cho cả các thành phần dữ liệu và giao diện người dùng. Vào cuối năm 2008, Google cho phát hành một thiết bị cầm tay được gọi là Android Dev Phone 1 có thể chạy được các ứng dụng Android mà không bị ràng buộc vào các nhà cung cấp mạng điện thoại di động. Mục tiêu của thiết bị này là cho phép các nhà phát triển thực hiện các cuộc thí nghiệm trên một thiết bị thực có thể chạy hệ điều hành Android mà không phải ký một bản hợp đồng nào. Vào khoảng cùng thời gian đó thì Google cũng cho phát hành một phiên vản vá lỗi 1.1 của hệ điều hành này. Ở cả hai phiên bản 1.0 và 1.1 Android chưa hỗ trợ soft-keyboard mà đòi hỏi các thiết bị phải sử dụng bàn phím vật lý. Android cố định vấn đề này bằng cách phát hành SDK 1.5 vào tháng Tư năm 2009, cùng với một số tính năng khác. Chẳng hạn như nâng cao khả năng ghi âm truyền thông, vật dụng, và các live folder. Lịch sử cập nhật Android đã trải qua một số các cấp nhật kể từ lần đầu phát hành. Những cập nhật này nhìn chung có nhiệm vụ vá các lỗ hổng và thêm các tính năng mới vào hệ điều hành. Tên phiên bản Thông tin phiên bản 1.5(Cupcake) Trên nền tảng Linux Kernel 2.6,27 - Ngày 30 tháng 4 năm 2009, bản cập nhật 1.5 chính thức (Cupcake) cho Android được phát hành. Trong đó bao gồm một số tính năng mới và các cập nhật về giao diện người dùng (UI): Khả năng ghi lại và xem video thông qua chế độ máy ghi hình (camcorder). Tải video lên YouTube và ảnh lên Picasa trực tiếp từ điện thoại. Bàn phím ảo mới với khả năng đoán trước văn bản. Hỗ trợ bluetooth A2DP và AVRCP. Khả năng tự động kết nối với một thiết bị Bluetooth trong một khoảng cách nhất định. Các widget và thư mục (folder) mới có thể chuyển đến The Home screens. Chuyển tiếp màn hình động. 1.6 (Donut) Trên nền tảng Linux Kernel 2.6.29 - Ngày 15 tháng 9 năm 2009, bản cập nhật 1.6 (Donut) SDK được phát hành. 2.0/2.1 (Eclair) Trên nền tảng Linux Kernel 2.6.29 - Ngày 26 tháng 10 năm 2009, bản cập nhật 2.0 (Eclair) được phát hành. - Phiên bản cập nhật 2.0.1 được phát hành vào ngày 3 tháng 12 năm 2009. - Phiên bản cập nhật 2.1 được phát hành vào ngày 12 tháng 1 năm 2010. 2.2 (Froyo) Trên nền tảng Linux Kernel 2.6.32 - Ngày 20 tháng 5 năm 2010, bản SDK 2.2 (Froyo) đ