1. Trang chủ
  2. » Thể loại khác

lập trình thiết bị di động

190 37 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 190
Dung lượng 6,22 MB

Nội dung

Nguyễn Minh Sơn – Phan Thị Hường Chu Nguyên Hoàng Minh i Mục Lục Giới thiệu môi trường phát triển điện thoại di động .1 1.1 Giới thiệu hệ điều hành Android Lịch sử Các phiên Android Kiến trúc tảng Android 1.2 Cài đặt Android Studio .10 Tải Java JDK cài đặt .11 Cài đặt Android Studio 17 1.3 Cách sử dụng thiết bị dùng hệ điều hành Android .22 Cài ứng dụng quản lí file .24 Ứng dụng quản lí chương trình chạy 25 Hình thành thói quen lưu liệu thường xuyên 27 Truy cập nhanh từ Home Screen 28 Gỡ bỏ ứng dụng không cần thiết 29 Thêm bớt âm báo Android 30 Làm máy không nhận thẻ nhớ? 30 Thường xuyên cập nhật phần mềm cho máy .31 1.4 Các thành phần ứng dụng Android 32 1.5 Đơn vị đo lường Android 33 1.6 XML Android 35 1.7 Máy ảo Android 36 1.8 Cấu trúc chung ứng dụng Android .37 1.9 Activities .37 Service 38 Broadcast Receivers 40 Content Provider 40 1.10 Câu hỏi 41 1.11 Tóm tắt 41 Xử lý giao diện người dùng 42 2.1 Cách tạo giao diện người dùng 42 XML Layout 43 Toast Alert Dialog 44 Layouts 46 Các View 55 ii Các control nâng cao: ListView, GridView, Gallery, Date picker, Tab selector , Menu, Animations, số control nâng cao khác .62 2.2 Tương tác liệu 72 Các kiểu lập trình kiện Android 72 Giới thiệu Intents cách thức sử dụng Intents 77 2.3 Câu hỏi 87 2.4 Tóm tắt 87 Xử lý tập tin, lưu trạng thái ứng dụng, thao tác sở liệu Content Provider 88 3.1 Xử lý Text File, XML file 88 3.2 Share Preferences .92 3.3 SQLite 96 3.4 Tạo Conten Provider 98 3.5 Câu hỏi 103 3.6 Tóm tắt 103 Xử lý đa tiến trình dịch vụ 104 4.1 Các kỹ thuật xử lý đa tiến trình 104 4.2 Tìm hiểu Intent Filter BroadCast Receiver 117 4.3 Tìm hiểu dịch vụ: 125 4.4 Các kiểu dịch vụ hệ thống 131 4.5 Câu hỏi 137 4.6 Tóm tắt 137 Networking APIs Multimedia APIs 138 5.1 Networking APIs 138 Tìm hiểu Mobile Networking 138 Tìm hiểu Strict Mode 138 Truy cập Internet với HTTP 138 5.2 Multimedia APIs 147 Cách chạy Audio Video 147 Cách ghi Audio Video 149 Cách sử dụng Camera lưu trữ hình ảnh 152 5.3 Tóm tắt 156 Telephony APIs Location Base Service APIs 158 6.1 Telephony APIs 158 Xử lý Contact resource 158 Xử lý gọi gọi đến, lịch sử gọi 160 iii Sử dụng SMS MMS 162 Sử dụng Bluetooth 165 Sử dụng Wi-Fi 167 6.2 Location Base Service APIs 170 Tìm hiểu GPS (Global Positioning Services) 170 Geocoding Locations 172 Mapping Locations 175 6.3 Tóm tắt 178 Thao tác với thiết bị cảm ứng 179 7.1 Cách cấu hình sử dụng thiết bị cảm ứng 179 7.2 Giám sát Pin điện thoại 182 7.3 Tóm tắt 184 Tài liệu tham khảo 185 Giới thiệu môi trường phát triển điện thoại di động 1.1 Giới thiệu hệ điều hành Android Android hệ điều hành dựa tảng Linux thiết kế dành cho thiết bị di động có hình cảm ứng điện thoại thơng minh, máy tính bảng đồng hồ thơng minh – Smart Watches, đầu phát HD, Blu-ay, Tivi thông minh – Smart Tivi phát triển Google dựa tảng Linux Trước đây, Android phát triển Cơng ty liên hợp Android (sau Google mua lại vào năm 2005) Lịch sử Tổng công ty Android (Android, Inc.) thành lập Palo Alto, California vào tháng 10 năm 2003 Andy Rubin (đồng sáng lập công ty Danger), Rich Miner (đồng sáng lập Tổng cơng ty Viễn thơng Wildfire), Nick Sears (từng Phó giám đốc T-Mobile), Chris White (trưởng thiết kế giao diện WebTV)[7] để phát triển, theo lời Rubin, "các thiết bị di động thơng minh biết vị trí sở thích người dùng" Google mua lại Tổng công ty Android vào ngày 17 tháng năm 2005, biến thành phận trực thuộc Google Những nhân viên chủ chốt Tổng công ty Android, gồm Rubin, Miner White, tiếp tục lại công ty làm việc sau thương vụ Vào thời điểm khơng có nhiều thông tin Tổng công ty, nhiều người đồn đốn Google dự tính tham gia thị trường điện thoại di động sau bước Tại Google, nhóm Rubin đứng đầu phát triển tảng thiết bị di động phát triển nhân Linux Google quảng bá tảng cho nhà sản xuất điện thoại nhà mạng với lời hứa cung cấp hệ thống uyển chuyển có khả nâng cấp Google liên hệ với hàng loạt hãng phần cứng đối tác phần mềm, bắn tin cho nhà mạng họ sẵn sàng hợp tác với cấp độ khác Ngày tháng 11 năm 2007, Liên minh thiết bị cầm tay mở (Open Handset Alliance), hiệp hội bao gồm nhiều cơng ty có Texas Instruments, Tập đồ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 Cùng ngày, Android mắt với vai trò sản phẩm Liên minh, tảng thiết bị di động xây dựng nhân Linux phiên 2.6 Chiếc điện thoại chạy Android bán HTC Dream, phát hành ngày 22 tháng 10 năm 2008 Biểu trưng hệ điều hành Android robot màu xanh hãng thiết kế Irina Blok California vẽ Hình 1.1 Logo Android hãng Irina Blok thiết kế Từ năm 2008, Android trải qua nhiều lần cập nhật để cải tiến hệ điều hành, bổ sung tính sửa lỗi lần phát hành trước Mỗi nâng cấp đặt tên theo thứ tự bảng chữ cái, theo tên ăn tráng miệng; ví dụ phiên 1.5 Cupcake (bánh bơng lan nhỏ có kem) tiếp nối phiên 1.6 Donut (bánh vòng) Phiên 5.0 Lollipop Vào năm 2010, Google mắt loạt thiết bị Nexus - dòng sản phẩm bao gồm điện thoại thơng minh máy tính bảng chạy hệ điều hành Android, đối tác phần cứng sản xuất HTC hợp tác với Google điện thoại thông minh Nexus đầu tiên, Nexus One Hình 1.2 Điện thoại Nexus One HTC sản xuất mắt vào 1/2010 Nexus có cấu hình mạnh mẽ vào thời điểm với: - Màn hình 3,7 inch độ phân giải 480x800 pixel, - Chip Qualcomm Scorpion 1GHz, - GPU Adreno 200, - RAM 512MB - Hệ điều hành cài sẵn Android 2.1 Eclair (mới lúc phát hành) Kể từ nhiều thiết bị gia nhập vào dòng sản phẩm này, điện thoại Nexus máy tính bảng Nexus 10, LG Samsung sản xuất Google xem điện thoại máy tính bảng Nexus thiết bị Android chủ lực mình, với tính phần cứng phần mềm Android Các phiên Android Phiên thương mại đầu tiên, Android 1.0 phát hành vào ngày 23 tháng năm 2008 thiết bị thương mại Google G1 (Hình 1) Lúc này, hệ điều hành cài sẵn nhiều dịch vụ Google YouTube, tìm kiếm, đồ, email,… Hình 1.3 Điện thoại Google G1, phiên thương mại Từ tháng năm 2009, phiên Android phát triển tên mã chủ đề bánh kẹo phát hành theo thứ tự bảng chữ cái: Cupcake (1.5), Donut (1.6), Eclair (2.0–2.1), Froyo (2.2–2.2.3), Gingerbread (2.3–2.3.7), Honeycomb (3.0– 3.2.6), Ice Cream Sandwich (4.0–4.0.4), Jelly Bean (4.1–4.3), KitKat (4.4), … Google công bố tỉ thiết bị kích hoạt sử dụng Android OS toàn cầu vào tháng năm 2013 Android 1.5 Cupcake – API 3: Ra mắt tháng 30/4/2009: Phiên có số tính đáng ý như: khả ghi lại xem video thơng qua chế độ máy ghi hình, tải video lên YouTube ảnh lên Picasa trực tiếp từ điện thoại, tích hợp bàn phím ảo với khả đoán trước văn bản, tự động kết nối với thiết bị Bluetooth khoảng cách định, widget thư mục cài đặt linh động hình chủ Hình 1.4 Giao diện hệ điều hành Android phiên 1.5 Cupcake Android 1.6 Donut – API 4: Ra mắt tháng 15/9/2009: Phiên giúp Nâng cao trải nghiệm kho ứng dụng Android Market, tích hợp giao diện tùy biến cho phép người dùng xóa nhiều ảnh lúc, nâng cấp Voice Search, nâng cấp khả tìm kiếm bookmarks, history, contacts web hình chủ, cập nhật cơng nghệ hỗ trợ cho CDMA/EVDO, IEEE 802.1X, VPNs, công cụ text-to-speech, bước đầu hỗ trợ hình độ phân giải WVGA, cải thiện tốc độ việc tìm kiếm ứng dụng máy ảnh, mở rộng cử cơng cụ phát triển GestureBuilder Hình 1.5 Giao diện hệ điều hành Android phiên 1.6 Donut Android 2.0/2.0.1/2.1 Eclair – API 5/6/7: Ra mắt tháng 12/1/2010 cho phiên 2.1 Phiên có cải thiện rõ rệt giao diện người dùng, tối ưu hóa tốc độ phần cứng, hỗ trợ nhiều kích cỡ độ phân giải hình hơn, thay đổi giao diện duyệt web hỗ trợ chuẩn HTML5, Exchange ActiveSync 2.5, nâng cấp Google Maps 3.1.2, camera zoom kĩ thuật số tích hợp đèn flash, nâng cấp bàn phím ảo kết nối Bluetooth 2.1, thay đổi hàm API sửa lỗi Android 2.2 Froyo – API 8: Ra mắt tháng 20/5/2010: Phiên trọng nâng cấp tốc độ xử lí, giới thiệu engine Chrome V8 JavaScript, hỗ trợ Adobe Flash10.1, thêm tính tạo điểm truy cập Wi-Fi Một tính đáng ý khác hỗ trợ chuyển đổi nhanh chóng ngơn ngữ từ điển bàn phím đồng thời cho phép cài đặt cập nhật ứng dụng thiết bị mở rộng nhớ Một smartphone chạy phiên Android 2.2 Froyo LG Optimus One Android 2.3/2.3.3 Gingerbread – API 9/10: Ra mắt tháng 6/12/2010: Phiên 2.3 nâng cấp đáng kể giao diện người dùng, cải thiện bàn phím ảo, thêm tính copy/paste, hỗ trợ cơng nghệ giao tiếp tầm sóng ngắn NFC, hỗ trợ chuẩn video WebM nâng cao tính copy–paste Cùng với phiên Gingerbread, Google mắt điện thoại hãng sử dụng tảng Google Nexus S Android 3.0 Honeycomb – API 11: Ra mắt tháng 2/2011: Đây phiên hệ điều hành dành riêng cho máy tính bảng tablet với giao diện tối ưu hóa cho tablet, từ thao tác phụ thuộc hình cảm ứng (như lướt web, duyệt mail ) Honeycomb hỗ trợ xử lí đa nhân xử lý đồ họa đồng thời hỗ trợ nhiều hình home khác nhau, cho phép người dùng dễ dàng tùy biến giao diện muốn Android 3.1 Ice-cream sandwich – API 12: Phiên mắt 10/5/2011 Là kết hợp Gingerbread Honeycomb: cải tiến UI, kết nối phụ kiện USB, mở rộng danh sách ứng dụng gần đây, thay đổi kích thước widget hình chính, hỗ trợ cho bàn phím thiết bị vào, hỗ trợ cho điều khiển gamepad, hỗ trợ cho chơi âm – FLAC, khóa hiệu cao, trì hiệu suất kết nối Wi-Fi cao hình thiết bị tắt, hỗ trợ HTTP proxy cho kết nối đến điểm Wi-Fi v.v… Hình 1.6 Bảng phân phối phiên Android tồn cầu từ tháng 12 2009 Tính đến tháng 2015, Android 4.x Jelly Bean phiên Android sử dụng rộng rãi nhất, hoạt động khoảng 59% thiết bị Android toàn cầu Ưu điểm hệ điều hành Android hệ điều hành có mã nguồn mở nên khả tùy biến cao, tùy ý chỉnh sửa mà khơng có can thiệp hay cấm Google, nhiên phải theo số nguyên tắc quy định từ trước Mặt khác đa dạng ứng dụng, sản phẩm hãng điện thoại khác Đó lý cho dịng sản phẩm chạy hệ điều hành Android có giá tốt, việc cạnh tranh hãng sản xuất Ngoài ra, khả chạy đa nhiệm chạy lúc nhiều ứng dụng Kiến trúc tảng Android Phần cứng: Android khơng phải phần phần cứng, mà tange phần mềm hồn chỉnh, điều chỉnh để làm việc cấu hình phần cứng Mọi thứ tồn Android từ Bootloader ứng dụng Có số ràng buộc phần cứng thiết bị để chạy hệ điều hành như: Phần cứng Yêu cầu tối thiểu ARM-based Chipset 128MB, 256MB Flash External RAM Mini Micro SD Ổ cứng 16-bit color Màn hình 2MP CMOS Navigation Key Standard mini-B USB interface USB 171 Để xác định vị trí thiết bị, bạn cần thực vài bước làm cho số lựa chọn Danh sách sau tóm tắt trình này: Lấy khai báo LocationManager sử dụng gọi đến phương thức getSystemService() sử dụng LOCATION_SERVICE Thêm quyền thích hợp vào tập tin AndroidManifest.xml, tùy thuộc vào loại thơng tin vị trí cần ứng dụng Chọn nhà cung cấp cách sử dụng hai phương thức getAllProviders() hay getBestProvider() Cài đặt lớp LocationListener Gọi phương thức requestLocationUpdates() với nhà cung cấp lựa chọn đối tượng LocationListener để bắt đầu nhận thông tin vị trí Điều khoản cụ thể khơng cần thiết để nhận khai báo đối tượng LocationManager Thay vào đó, điều khoản xác định nhà cung cấp Các lệnh sau nhận khai báo đối tượng LocationManager: import android.location.*; LocationManager location = (LocationManager)getSystemService(Context.LOCATION_SERVICE); Đoạn lệnh XML sau cung cấp ứng dụng với hai điều khoản truy cập vị trí tốt thường thêm vào quyền truy cập file AndroidManifest.xml: uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> Bây ứng dụng có quyền truy cập để sử dụng thơng tin vị trí đối tượng LocationManager hợp lệ, phải xác định nhà cung cấp sử dụng cho thơng tin vị trí Các lệnh sau cấu hình đối tượng Criteria yêu cầu nhà cung cấp dựa thông tin này: Criteria criteria = new Criteria(); criteria.setAccuracy(Criteria.NO_REQUIREMENT); criteria.setPowerRequirement(Criteria.NO_REQUIREMENT); String bestProvider = location.getBestProvider(criteria, true); Phương thức setAccuracy() lấy giá trị cho ACCURACY_COARSE ACCURACY_FINE mà sử dụng (cùng với điều khoản thích hợp) để yêu cầu nhà cung cấp ứng dụng có quyền truy cập để sử dụng Bạn sử dụng phương thức setPowerRequirement() để tìm nhà cung cấp phù hợp với yêu cầu sử dụng power phù hợp, chẳng hạn POWER_HIGH POWER_LOW Các đối tượng Criteria cho phép để xác định liệu nhà cung cấp phải chịu chi phí cho người sử dụng số chi tiết khác Nếu ứng dụng có yêu cầu cụ thể, nơi bạn thiết lập chúng Tuy nhiên, thiết lập tiêu chí khơng có nghĩa nhà cung cấp có sẵn cho người dùng Một cách linh hoạt yêu cầu phép sử dụng phạm vi rộng lớn thiết bị Một tham số 172 Boolean phương thức getBestProvider() cho phép ứng dụng yêu cầu nhà cung cấp kích hoạt Geocoding Locations Xác định vĩ độ kinh độ hữu ích cho vị trí xác, theo dõi đo lường; Tuy nhiên, khơng thường mơ tả cho người sử dụng Android SDK cung cấp số phương thức giúp đỡ để chuyển liệu vị trí vào địa tên nơi mô tả Những phương thức làm việc ngược lại, biến tên hay địa vào vị trí tọa độ Đối tượng Geocoder sử dụng mà khơng có điều khoản đặc biệt Các đoạn mã sau chứng tỏ cách sử dụng đối tượng Geocoder để có tên vị trí đối tượng Location thông qua phương thức onLocationChanged() LocationListener: if (Geocoder.isPresent()) { Geocoder coder = new Geocoder(this); try { List addresses = coder.getFromLocation( location.getLatitude(), location.getLongitude(), 3); if (addresses != null) { for (Address namedLoc : addresses) { String placeName = namedLoc.getLocality(); String featureName = namedLoc.getFeatureName(); String country = namedLoc.getCountryName(); String road = namedLoc.getThoroughfare(); locInfo.append(String.format("[%s][%s][%s][%s]\n", placeName, featureName, road, country)); int namedLoc.getMaxAddressLineIndex(); addIdx = for (int idx = 0; idx

Ngày đăng: 05/12/2020, 06:50

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w