Android 4.3
Chào mừng bạn đến với Android 4.3, phiên bản Jelly Bean ngon hơn!
Android 4.3 bao gồm các tính năng tối ưu hoá hiệu suất và tính năng mới tuyệt vời dành cho người dùng và nhà phát triển. Tài liệu này cung cấp thông tin tổng quan về các tính năng mới dành cho nhà phát triển.
Hãy xem tài liệu về API Android 4.3 để biết thông tin chi tiết về các API mới dành cho nhà phát triển.
Tìm hiểu thêm về các tính năng mới của Jelly Bean dành cho người dùng tại www.android.com.
Nhanh hơn, mượt mà hơn, phản hồi nhanh hơn
Android 4.3 được xây dựng dựa trên các điểm cải tiến về hiệu suất đã có trong Jelly Bean — điều phối thời gian vsync, bộ đệm ba lần, giảm độ trễ cảm ứng, tăng cường đầu vào CPU và kết xuất 2D tăng tốc phần cứng — đồng thời bổ sung các tính năng tối ưu hoá mới giúp Android hoạt động nhanh hơn nữa.
Để tăng hiệu suất đồ hoạ, trình kết xuất 2D tăng tốc phần cứng hiện tối ưu hoá luồng lệnh vẽ, chuyển đổi luồng này thành định dạng GPU hiệu quả hơn bằng cách sắp xếp lại và hợp nhất các thao tác vẽ. Để xử lý nhiều luồng, trình kết xuất hiện cũng có thể sử dụng nhiều luồng trên nhiều lõi CPU để thực hiện một số tác vụ nhất định.
Android 4.3 cũng cải thiện khả năng hiển thị hình dạng và văn bản. Các hình dạng như hình tròn và hình chữ nhật bo tròn hiện được kết xuất ở chất lượng cao hơn và hiệu quả hơn. Các tính năng tối ưu hoá cho văn bản bao gồm tăng hiệu suất khi sử dụng nhiều phông chữ hoặc bộ ký tự phức tạp (CJK), chất lượng kết xuất cao hơn khi điều chỉnh tỷ lệ văn bản và kết xuất bóng đổ nhanh hơn.
Tính năng cải thiện việc phân bổ vùng đệm cửa sổ giúp phân bổ vùng đệm hình ảnh nhanh hơn cho ứng dụng, giảm thời gian bắt đầu kết xuất khi bạn tạo cửa sổ.
Để có đồ hoạ hiệu suất cao nhất, Android 4.3 ra mắt tính năng hỗ trợ OpenGL ES 3.0 và cho phép các ứng dụng truy cập thông qua cả khung và API gốc. Trên các thiết bị được hỗ trợ, công cụ kết xuất 2D tăng tốc phần cứng tận dụng OpenGL ES 3.0 để tối ưu hoá quản lý hoạ tiết và tăng độ chân thực của kết xuất chuyển màu.
OpenGL ES 3.0 cho đồ hoạ hiệu suất cao
Android 4.3 ra mắt tính năng hỗ trợ nền tảng cho Khronos OpenGL ES 3.0, cung cấp cho các trò chơi và ứng dụng khác khả năng đồ hoạ 2D và 3D hiệu suất cao nhất trên các thiết bị được hỗ trợ. Bạn có thể tận dụng OpenGL ES 3.0 và các tiện ích EGL liên quan bằng cách sử dụng API khung hoặc liên kết API gốc thông qua Bộ phát triển gốc Android (NDK).
Các chức năng mới chính được cung cấp trong OpenGL ES 3.0 bao gồm tính năng tăng tốc hiệu ứng hình ảnh nâng cao, tính năng nén hoạ tiết ETC2/EAC chất lượng cao dưới dạng tính năng tiêu chuẩn, phiên bản mới của ngôn ngữ đổ bóng GLSL ES có hỗ trợ số nguyên và dấu phẩy động 32 bit, kết xuất hoạ tiết nâng cao, cũng như kích thước hoạ tiết và định dạng vùng đệm kết xuất được chuẩn hoá.
Bạn có thể sử dụng API OpenGL ES 3.0 để tạo đồ hoạ rất phức tạp, rất hiệu quả chạy trên một loạt thiết bị Android tương thích và bạn có thể hỗ trợ một định dạng nén hoạ tiết chuẩn trên các thiết bị đó.
OpenGL ES 3.0 là một tính năng không bắt buộc, tuỳ thuộc vào phần cứng đồ hoạ cơ bản. Dịch vụ hỗ trợ đã có trên các thiết bị Nexus 7 (2013), Nexus 4 và Nexus 10.
Cải thiện khả năng kết nối Bluetooth
Khả năng kết nối với các thiết bị và cảm biến Bluetooth thông minh
Giờ đây, bạn có thể thiết kế và xây dựng các ứng dụng tương tác với thế hệ thiết bị và cảm biến nhỏ, tiêu thụ ít năng lượng mới nhất sử dụng công nghệ Bluetooth thông minh.
Android 4.3 giới thiệu tính năng hỗ trợ nền tảng tích hợp cho Bluetooth Smart Ready ở vai trò trung tâm và cung cấp một bộ API tiêu chuẩn mà ứng dụng có thể sử dụng để khám phá các thiết bị lân cận, truy vấn các dịch vụ GATT và đọc/ghi các đặc điểm.
Với các API mới, ứng dụng của bạn có thể quét hiệu quả các thiết bị và dịch vụ mà bạn quan tâm. Đối với mỗi thiết bị, bạn có thể kiểm tra các dịch vụ GATT được hỗ trợ theo UUID và quản lý các kết nối theo mã thiết bị và cường độ tín hiệu. Bạn có thể kết nối với máy chủ GATT được lưu trữ trên thiết bị và đọc hoặc ghi các đặc điểm hoặc đăng ký trình nghe để nhận thông báo bất cứ khi nào các đặc điểm đó thay đổi.
Bạn có thể triển khai tính năng hỗ trợ cho bất kỳ hồ sơ GATT nào. Bạn có thể đọc hoặc ghi các đặc điểm tiêu chuẩn hoặc thêm tính năng hỗ trợ cho các đặc điểm tuỳ chỉnh nếu cần. Ứng dụng của bạn có thể hoạt động như ứng dụng khách hoặc máy chủ và có thể truyền và nhận dữ liệu ở cả hai chế độ. Các API này là chung, vì vậy, bạn có thể hỗ trợ các hoạt động tương tác với nhiều thiết bị như thẻ cảm biến khoảng cách, đồng hồ, máy đo thể dục, tay điều khiển trò chơi, điều khiển từ xa, thiết bị y tế, v.v.
Tính năng hỗ trợ Bluetooth Smart Ready đã có trên các thiết bị Nexus 7 (2013) và Nexus 4, đồng thời sẽ được hỗ trợ trên ngày càng nhiều thiết bị tương thích với Android trong những tháng tới.
Cấu hình AVRCP 1.3
Android 4.3 tích hợp tính năng hỗ trợ Bluetooth AVRCP 1.3, nhờ đó, ứng dụng của bạn có thể hỗ trợ các hoạt động tương tác phong phú hơn với các thiết bị truyền phát nội dung đa phương tiện từ xa. Các ứng dụng như trình phát nội dung nghe nhìn có thể tận dụng AVRCP 1.3 thông qua API ứng dụng điều khiển từ xa được giới thiệu trong Android 4.0. Ngoài việc hiển thị các chế độ điều khiển phát trên các thiết bị từ xa được kết nối qua Bluetooth, giờ đây, các ứng dụng có thể truyền siêu dữ liệu như tên bản nhạc, nhà soạn nhạc và các loại siêu dữ liệu nội dung nghe nhìn khác.
Tính năng hỗ trợ nền tảng cho AVRCP 1.3 được xây dựng trên ngăn xếp Bluetooth Bluedroid do Google và Broadcom giới thiệu trong Android 4.2. Bạn có thể sử dụng tính năng hỗ trợ ngay trên các thiết bị Nexus và các thiết bị tương thích với Android khác có khả năng A2DP/AVRCP.
Hỗ trợ cho Hồ sơ bị hạn chế
Android 4.3 mở rộng tính năng nhiều người dùng cho máy tính bảng bằng hồ sơ bị hạn chế, một cách mới để quản lý người dùng và các chức năng của họ trên một thiết bị. Với hồ sơ bị hạn chế, chủ sở hữu máy tính bảng có thể nhanh chóng thiết lập các môi trường riêng biệt cho từng người dùng, đồng thời có thể quản lý các quy định hạn chế chi tiết hơn trong các ứng dụng có sẵn trong những môi trường đó. Hồ sơ bị hạn chế là lựa chọn lý tưởng cho bạn bè và gia đình, người dùng khách, quầy thông tin, thiết bị điểm bán hàng, v.v.
Mỗi hồ sơ bị hạn chế đều cung cấp một không gian riêng biệt và an toàn với bộ nhớ cục bộ, màn hình chính, tiện ích và chế độ cài đặt riêng. Không giống như người dùng, hồ sơ được tạo từ môi trường của chủ sở hữu máy tính bảng, dựa trên các ứng dụng và tài khoản hệ thống đã cài đặt của chủ sở hữu. Chủ sở hữu kiểm soát những ứng dụng đã cài đặt được bật trong hồ sơ mới và quyền truy cập vào tài khoản của chủ sở hữu sẽ bị tắt theo mặc định.
Các ứng dụng cần truy cập vào tài khoản của chủ sở hữu (để đăng nhập, lựa chọn ưu tiên hoặc sử dụng cho mục đích khác) có thể chọn sử dụng bằng cách khai báo thuộc tính tệp kê khai, và chủ sở hữu có thể xem xét và quản lý các ứng dụng đó trong phần cài đặt cấu hình hồ sơ.
Đối với nhà phát triển, hồ sơ bị hạn chế là một cách mới để mang lại nhiều giá trị và quyền kiểm soát hơn cho người dùng. Bạn có thể triển khai các hạn chế về ứng dụng – các chế độ kiểm soát nội dung hoặc chức năng mà ứng dụng của bạn hỗ trợ – và quảng cáo các hạn chế đó cho chủ sở hữu máy tính bảng trong phần cài đặt cấu hình hồ sơ.
Bạn có thể thêm các quy định hạn chế đối với ứng dụng trực tiếp vào chế độ cài đặt cấu hình hồ sơ bằng cách sử dụng các loại boolean, chọn và nhiều lựa chọn được xác định trước. Nếu muốn linh hoạt hơn, bạn thậm chí có thể chạy giao diện người dùng của riêng mình từ phần cài đặt cấu hình hồ sơ để đưa ra bất kỳ loại hạn chế nào bạn muốn.
Khi chạy trong một hồ sơ, ứng dụng của bạn có thể kiểm tra mọi quy định hạn chế do chủ sở hữu định cấu hình và thực thi các quy định đó một cách thích hợp. Ví dụ: một ứng dụng đa phương tiện có thể đưa ra quy định hạn chế để cho phép chủ sở hữu đặt cấp độ phân loại nội dung cho hồ sơ. Trong thời gian chạy, ứng dụng có thể kiểm tra chế độ cài đặt mức độ phù hợp với lứa tuổi, sau đó quản lý nội dung theo cấp độ phù hợp với lứa tuổi được ưu tiên.
Nếu ứng dụng của bạn không được thiết kế để sử dụng trong hồ sơ bị hạn chế, bạn có thể chọn không sử dụng để ứng dụng của bạn không thể được bật trong bất kỳ hồ sơ bị hạn chế nào.
Các chức năng vị trí và cảm biến được tối ưu hoá
Dịch vụ Google Play cung cấp các API vị trí nâng cao mà bạn có thể sử dụng trong ứng dụng của mình. Android 4.3 tối ưu hoá các API này trên các thiết bị được hỗ trợ bằng các tính năng phần cứng và phần mềm mới giúp giảm thiểu mức sử dụng pin.
Tính năng khoanh vùng địa lý bằng phần cứng tối ưu hoá hiệu suất pin bằng cách thực hiện tính toán vị trí trong phần cứng của thiết bị thay vì trong phần mềm. Trên các thiết bị hỗ trợ tính năng khoanh vùng địa lý bằng phần cứng, API khoanh vùng địa lý của Dịch vụ Google Play sẽ có thể tận dụng tính năng tối ưu hoá này để tiết kiệm pin khi thiết bị đang di chuyển.
Chế độ chỉ quét Wi-Fi là một tính năng tối ưu hoá nền tảng mới cho phép người dùng bật tính năng quét Wi-Fi mà không cần kết nối với mạng Wi-Fi, để cải thiện độ chính xác của vị trí trong khi vẫn tiết kiệm pin. Giờ đây, các ứng dụng phụ thuộc vào Wi-Fi cho dịch vụ vị trí có thể yêu cầu người dùng bật chế độ chỉ quét trong phần cài đặt nâng cao của Wi-Fi. Chế độ chỉ quét Wi-Fi không phụ thuộc vào phần cứng thiết bị và có trong nền tảng Android 4.3.
Các loại cảm biến mới cho phép ứng dụng quản lý tốt hơn các kết quả đọc cảm biến. Vectơ xoay trò chơi cho phép nhà phát triển trò chơi cảm nhận được độ xoay của thiết bị mà không phải lo lắng về sự can thiệp từ trường. Cảm biến con quay hồi chuyển chưa được hiệu chuẩn và máy đo từ trường chưa được hiệu chuẩn sẽ báo cáo các phép đo thô cũng như độ lệch ước tính cho ứng dụng.
Các tính năng phần cứng mới đã có trên thiết bị Nexus 7 (2013) và thiết bị Nexus 4. Mọi nhà sản xuất thiết bị hoặc nhà cung cấp chipset đều có thể tích hợp các tính năng này vào thiết bị của họ.
Các tính năng mới của nội dung nghe nhìn
Khung DRM mô-đun
Để đáp ứng nhu cầu của các dịch vụ đa phương tiện thế hệ mới, Android 4.3 giới thiệu một khung DRM mô-đun cho phép các nhà phát triển ứng dụng đa phương tiện tích hợp DRM vào các giao thức truyền trực tuyến của riêng họ một cách dễ dàng hơn, chẳng hạn như MPEG DASH (Dynamic Adaptive Streaming over HTTP, ISO/IEC 23009-1).
Thông qua việc kết hợp các API mới và các tính năng nâng cao cho API hiện có, khung DRM nội dung nghe nhìn cung cấp một bộ dịch vụ tích hợp để quản lý việc cấp phép và cung cấp, truy cập vào bộ mã hoá và giải mã cấp thấp cũng như giải mã dữ liệu nội dung nghe nhìn được mã hoá. API MediaExtractor mới cho phép bạn lấy siêu dữ liệu PSSH cho nội dung nghe nhìn DASH. Các ứng dụng sử dụng khung DRM nội dung nghe nhìn sẽ quản lý hoạt động giao tiếp mạng với máy chủ cấp phép và xử lý việc truyền trực tuyến dữ liệu đã mã hoá từ thư viện nội dung.
Bộ mã hoá VP8
Android 4.3 giới thiệu tính năng hỗ trợ tích hợp cho việc mã hoá VP8, có thể truy cập được từ khung và API gốc. Đối với các ứng dụng sử dụng API gốc, nền tảng này bao gồm các tiêu đề tiện ích OpenMAX 1.1.2 để hỗ trợ các hồ sơ và cấp VP8. Tính năng hỗ trợ mã hoá VP8 bao gồm các chế độ cài đặt cho tốc độ bit mục tiêu, kiểm soát tốc độ, tốc độ khung hình, phân vùng mã thông báo, khả năng chống lỗi, tái tạo và bộ lọc lặp. API nền tảng giới thiệu tính năng hỗ trợ bộ mã hoá VP8 trong một loạt định dạng để bạn có thể tận dụng định dạng tốt nhất cho nội dung của mình.
Mã hoá VP8 có trong phần mềm trên tất cả thiết bị tương thích chạy Android 4.3. Để đạt được hiệu suất cao nhất, nền tảng này cũng hỗ trợ tính năng mã hoá VP8 tăng tốc phần cứng trên các thiết bị có khả năng.
Mã hoá video từ một nền tảng
Kể từ Android 4.3, bạn có thể sử dụng một nền tảng làm dữ liệu đầu vào cho bộ mã hoá video. Ví dụ: giờ đây, bạn có thể chuyển hướng luồng từ một nền tảng OpenGL ES đến bộ mã hoá, thay vì phải sao chép giữa các vùng đệm.
Trình kết hợp nội dung đa phương tiện
Các ứng dụng có thể sử dụng API trình kết hợp nội dung nghe nhìn mới để kết hợp các luồng âm thanh và video cơ bản thành một tệp đầu ra duy nhất. Hiện tại, các ứng dụng có thể đaплекс một luồng âm thanh MPEG-4 và một luồng video MPEG-4 thành một tệp đầu ra MPEG-4. Các API mới là đối tác của API phân tách nội dung đa phương tiện được giới thiệu trong Android 4.2.
Tiến trình phát và tua trong ứng dụng điều khiển từ xa
Kể từ Android 4.0, trình phát nội dung nghe nhìn và các ứng dụng tương tự đã có thể cung cấp các chế độ điều khiển phát từ ứng dụng điều khiển từ xa, chẳng hạn như màn hình khoá thiết bị, thông báo và thiết bị từ xa được kết nối qua Bluetooth. Kể từ Android 4.3, các ứng dụng đó hiện cũng có thể hiển thị tiến trình và tốc độ phát thông qua ứng dụng điều khiển từ xa và nhận lệnh để chuyển đến một vị trí phát cụ thể.
Các cách mới để tạo ứng dụng đẹp mắt
Quyền truy cập thông báo
Thông báo từ lâu đã là một tính năng phổ biến trên Android vì cho phép người dùng xem thông tin và nội dung cập nhật trên toàn hệ thống, tất cả ở cùng một nơi. Giờ đây, trong Android 4.3, các ứng dụng có thể quan sát luồng thông báo khi người dùng cho phép và hiển thị thông báo theo bất kỳ cách nào họ muốn, bao gồm cả việc gửi thông báo đến các thiết bị ở gần được kết nối qua Bluetooth.
Bạn có thể truy cập vào thông báo thông qua các API mới cho phép bạn đăng ký trình nghe thông báo và khi người dùng cho phép, bạn sẽ nhận được thông báo khi thông báo đó xuất hiện trên thanh trạng thái. Thông báo được gửi đầy đủ cho bạn, bao gồm tất cả thông tin chi tiết về ứng dụng gốc, thời gian đăng, chế độ xem và kiểu nội dung cũng như mức độ ưu tiên. Bạn có thể đánh giá các trường quan tâm trong thông báo, xử lý hoặc thêm ngữ cảnh từ ứng dụng của mình và định tuyến các trường đó để hiển thị theo bất kỳ cách nào bạn chọn.
API mới cung cấp cho bạn các lệnh gọi lại khi một thông báo được thêm, cập nhật và xoá (do người dùng đóng hoặc ứng dụng ban đầu đã rút lại thông báo đó). Bạn có thể chạy mọi ý định đính kèm vào thông báo hoặc hành động của thông báo, cũng như đóng thông báo đó khỏi hệ thống, cho phép ứng dụng của bạn cung cấp giao diện người dùng hoàn chỉnh cho thông báo.
Người dùng vẫn nắm quyền kiểm soát ứng dụng nào có thể nhận thông báo. Bất cứ lúc nào, trẻ cũng có thể xem trong phần Cài đặt để biết ứng dụng nào có quyền truy cập thông báo và bật hoặc tắt quyền truy cập nếu cần. Quyền truy cập thông báo bị tắt theo mặc định — các ứng dụng có thể sử dụng một Ý định mới để đưa người dùng trực tiếp đến phần Cài đặt nhằm bật dịch vụ trình nghe sau khi cài đặt.
Xem lớp phủ
Giờ đây, bạn có thể tạo lớp phủ trong suốt trên các Khung hiển thị và ViewGroups để hiển thị hệ phân cấp Khung hiển thị tạm thời hoặc hiệu ứng ảnh động tạm thời mà không làm phiền hệ phân cấp bố cục cơ bản. Lớp phủ đặc biệt hữu ích khi bạn muốn tạo ảnh động, chẳng hạn như trượt một thành phần hiển thị ra khỏi vùng chứa hoặc kéo các mục trên màn hình mà không ảnh hưởng đến hệ phân cấp thành phần hiển thị.
Chế độ bố cục ranh giới quang học
Chế độ bố cục mới cho phép bạn quản lý vị trí của Khung hiển thị bên trong ViewGroups theo ranh giới quang học thay vì ranh giới cắt. Ranh giới cắt đại diện cho ranh giới bên ngoài thực tế của tiện ích, trong khi ranh giới quang học mới mô tả vị trí xuất hiện của tiện ích, trong ranh giới cắt. Bạn có thể sử dụng chế độ bố cục giới hạn quang học để căn chỉnh đúng cách các tiện ích sử dụng hiệu ứng hình ảnh bên ngoài như bóng và ánh sáng.
Các loại ảnh động xoay tuỳ chỉnh
Giờ đây, ứng dụng có thể xác định các loại ảnh động thoát và nhập được sử dụng trên cửa sổ khi thiết bị được xoay. Bạn có thể đặt thuộc tính cửa sổ để bật tính năng cắt chuyển, hiệu ứng chuyển tiếp hoặc xoay cửa sổ chuẩn. Hệ thống sử dụng các loại ảnh động tuỳ chỉnh khi cửa sổ ở chế độ toàn màn hình và không bị các cửa sổ khác che khuất.
Chế độ hướng màn hình
Các ứng dụng có thể đặt chế độ hướng mới cho Hoạt động để đảm bảo rằng các hoạt động đó được hiển thị theo hướng thích hợp khi thiết bị được lật. Ngoài ra, các ứng dụng có thể sử dụng chế độ mới để khoá màn hình theo hướng hiện tại. Điều này rất hữu ích cho các ứng dụng sử dụng máy ảnh muốn tắt tính năng xoay trong khi quay video.
Ý định xử lý Câu trả lời nhanh
Android 4.3 ra mắt một Ý định công khai mới cho phép mọi ứng dụng xử lý phản hồi nhanh – tin nhắn văn bản do người dùng gửi để phản hồi cuộc gọi đến mà không cần nhấc máy hoặc mở khoá thiết bị. Ứng dụng của bạn có thể nghe ý định và gửi thông báo đến phương thức gọi qua hệ thống nhắn tin. Ý định này bao gồm người nhận (phương thức gọi) cũng như chính thông báo.
Hỗ trợ người dùng quốc tế
Cải tiến RTL
Android 4.3 bao gồm các tính năng cải thiện hiệu suất RTL và hỗ trợ RTL rộng hơn trên các tiện ích giao diện người dùng khung, bao gồm cả ProgressBar/Spinner và ExpandableListView. Bạn có thể xem thêm thông tin gỡ lỗi thông qua công cụ uiautomatorviewer
. Ngoài ra, nhiều thành phần giao diện người dùng hệ thống hiện đã nhận biết được RTL, chẳng hạn như thông báo, thanh điều hướng và Thanh thao tác.
Để mang lại trải nghiệm tốt hơn trên toàn hệ thống trong các tập lệnh RTL, giờ đây, nhiều ứng dụng hệ thống mặc định hơn hỗ trợ bố cục RTL, bao gồm Trình chạy, Cài đặt nhanh, Điện thoại, Danh bạ, SetupWizard, Đồng hồ, Tệp tải xuống, v.v.
Tiện ích để bản địa hoá
Android 4.3 cũng bao gồm các tiện ích và API mới để tạo chuỗi RTL tốt hơn và kiểm thử giao diện người dùng đã bản địa hoá. Lớp BidiFormatter mới cung cấp một API đơn giản để gói các chuỗi Unicode, nhờ đó dữ liệu tập lệnh RTL hiển thị như dự kiến trong thông báo theo ngôn ngữ LTR và ngược lại. Để cho phép bạn sử dụng tiện ích này rộng rãi hơn trong ứng dụng, BidiFormatter API hiện cũng có sẵn cho các phiên bản nền tảng cũ hơn thông qua Gói hỗ trợ trong SDK Android.
Để hỗ trợ bạn quản lý định dạng ngày trên các ngôn ngữ, Android 4.3 có một phương thức getBestDateTimePattern() mới. Phương thức này sẽ tự động tạo ra hình thức bản địa hoá tốt nhất có thể của ngày Unicode UTS cho ngôn ngữ mà bạn chỉ định. Đây là một cách thuận tiện để cung cấp trải nghiệm gần gũi và thân thiện hơn cho người dùng.
Để giúp bạn dễ dàng kiểm thử ứng dụng của mình ở các ngôn ngữ khác, Android 4.3 giới thiệu ngôn ngữ giả làm tuỳ chọn mới cho nhà phát triển. Ngôn ngữ giả lập mô phỏng ngôn ngữ, tập lệnh và các đặc điểm hiển thị liên kết với một ngôn ngữ hoặc nhóm ngôn ngữ. Hiện tại, bạn có thể kiểm thử bằng ngôn ngữ giả lập cho Tiếng Anh có dấu. Điều này cho phép bạn xem giao diện người dùng hoạt động như thế nào với các dấu và ký tự viết tay được sử dụng trong nhiều ngôn ngữ châu Âu.
Hỗ trợ tiếp cận và Tự động hoá giao diện người dùng
Kể từ Android 4.3, các dịch vụ hỗ trợ tiếp cận có thể quan sát và lọc các sự kiện nhấn phím, chẳng hạn như để xử lý phím tắt hoặc cung cấp tính năng điều hướng tương đương với phương thức nhập dựa trên cử chỉ. Dịch vụ này sẽ nhận các sự kiện và có thể xử lý các sự kiện đó nếu cần trước khi các sự kiện được chuyển đến hệ thống hoặc các ứng dụng đã cài đặt khác.
Dịch vụ hỗ trợ tiếp cận có thể khai báo các thuộc tính chức năng mới để mô tả những gì dịch vụ của chúng có thể làm và những tính năng nền tảng mà chúng sử dụng. Ví dụ: các lớp này có thể khai báo khả năng lọc sự kiện nhấn phím, truy xuất nội dung cửa sổ, bật tính năng khám phá bằng thao tác chạm hoặc bật các tính năng hỗ trợ tiếp cận trên web. Trong một số trường hợp, các dịch vụ phải khai báo thuộc tính chức năng trước khi có thể truy cập vào các tính năng liên quan trên nền tảng. Hệ thống sử dụng các thuộc tính chức năng của dịch vụ để tạo hộp thoại chọn tham gia cho người dùng, nhờ đó họ có thể xem và đồng ý với các chức năng trước khi khởi chạy.
Dựa trên khung hỗ trợ tiếp cận trong Android 4.3, khung tự động hoá giao diện người dùng mới cho phép các chương trình kiểm thử tương tác với giao diện người dùng của thiết bị bằng cách mô phỏng các thao tác của người dùng và tự kiểm tra nội dung trên màn hình. Thông qua khung tự động hoá giao diện người dùng, bạn có thể thực hiện các thao tác cơ bản, đặt chế độ xoay màn hình, tạo sự kiện đầu vào, chụp ảnh màn hình và làm nhiều việc khác. Đây là một cách hiệu quả để tự động hoá quy trình kiểm thử trong các tình huống người dùng thực tế, bao gồm cả các hành động hoặc trình tự trải dài trên nhiều ứng dụng.
Doanh nghiệp và bảo mật
Cấu hình Wi-Fi cho mạng WPA2-Enterprise
Giờ đây, các ứng dụng có thể định cấu hình thông tin xác thực Wi-Fi mà chúng cần để kết nối với điểm truy cập WPA2 doanh nghiệp. Nhà phát triển có thể sử dụng các API mới để định cấu hình thông tin xác thực Giao thức xác thực có thể mở rộng (EAP) và EAP được đóng gói (Giai đoạn 2) cho các phương thức xác thực được sử dụng trong doanh nghiệp. Các ứng dụng có quyền truy cập và thay đổi Wi-Fi có thể định cấu hình thông tin xác thực cho nhiều phương thức xác thực EAP và Giai đoạn 2.
Hộp cát Android được củng cố bằng SELinux
Android hiện sử dụng SELinux, một hệ thống kiểm soát truy cập bắt buộc (MAC) trong nhân Linux để tăng cường hộp cát ứng dụng dựa trên UID. Điều này giúp bảo vệ hệ điều hành khỏi các lỗ hổng bảo mật tiềm ẩn.
Các điểm cải tiến của KeyChain
API KeyChain hiện cung cấp một phương thức cho phép các ứng dụng xác nhận rằng các khoá trên toàn hệ thống được liên kết với một gốc phần cứng đáng tin cậy cho thiết bị. Đây là nơi để tạo hoặc lưu trữ các khoá riêng tư mà không thể xuất khỏi thiết bị, ngay cả trong trường hợp bị xâm phạm thư mục gốc hoặc nhân hệ điều hành.
Trình cung cấp Kho khoá Android
Android 4.3 giới thiệu một trình cung cấp kho khoá và các API cho phép ứng dụng tạo khoá sử dụng riêng. Khi sử dụng các API này, ứng dụng có thể tạo hoặc lưu trữ các khoá riêng tư mà các ứng dụng khác không thể xem hoặc sử dụng, đồng thời có thể thêm các khoá này vào kho khoá mà không cần người dùng tương tác.
Trình cung cấp kho khoá mang lại các lợi ích bảo mật tương tự như API KeyChain cho thông tin đăng nhập trên toàn hệ thống, chẳng hạn như liên kết thông tin đăng nhập với một thiết bị. Không thể xuất khoá riêng tư trong kho khoá ra khỏi thiết bị.
Hạn chế Setuid từ Ứng dụng Android
Phân vùng /system
hiện được gắn nosuid
cho các quy trình do zygote tạo ra, ngăn các ứng dụng Android thực thi các chương trình setuid
. Điều này giúp giảm bề mặt tấn công gốc và khả năng xảy ra các lỗ hổng bảo mật tiềm ẩn.
Các cách mới để phân tích hiệu suất
Cải tiến tính năng ghi nhật ký Systrace
Android 4.3 hỗ trợ phiên bản nâng cao của công cụ Systrace dễ sử dụng hơn và cho phép bạn truy cập vào nhiều loại thông tin hơn để phân tích hiệu suất của ứng dụng. Giờ đây, bạn có thể thu thập dữ liệu theo dõi từ các mô-đun phần cứng, các hàm hạt nhân, máy ảo Dalvik, bao gồm cả việc thu gom rác, tải tài nguyên và nhiều thông tin khác.
Android 4.3 cũng bao gồm các API theo dõi mới mà bạn có thể sử dụng trong ứng dụng của mình để đánh dấu các phần mã cụ thể cần theo dõi bằng sự kiện bắt đầu/kết thúc Systrace. Khi các phần mã được đánh dấu thực thi, hệ thống sẽ ghi các sự kiện bắt đầu/kết thúc vào nhật ký theo dõi. Việc này có tác động tối thiểu đến hiệu suất của ứng dụng, vì vậy, thời gian được báo cáo sẽ cung cấp cho bạn thông tin chính xác về những gì ứng dụng của bạn đang làm.
Bạn có thể hình dung các sự kiện dành riêng cho ứng dụng trong tiến trình trong tệp đầu ra Systrace và phân tích các sự kiện trong ngữ cảnh của dữ liệu theo dõi không gian người dùng và hạt nhân khác. Cùng với các thẻ Systrace hiện có, các phần ứng dụng tuỳ chỉnh có thể cung cấp cho bạn các cách mới để hiểu rõ hiệu suất và hành vi của ứng dụng.
Lập hồ sơ GPU trên màn hình
Android 4.3 bổ sung các tuỳ chọn mới dành cho nhà phát triển để giúp bạn phân tích hiệu suất của ứng dụng và xác định chính xác các vấn đề về kết xuất trên mọi thiết bị hoặc trình mô phỏng.
Trong tuỳ chọn Kết xuất phân tích GPU, giờ đây, bạn có thể trực quan hoá tốc độ khung hình hiệu quả của ứng dụng trên màn hình trong khi ứng dụng đang chạy. Bạn có thể chọn hiển thị dữ liệu phân tích tài nguyên dưới dạng biểu đồ thanh hoặc biểu đồ đường trên màn hình, với các màu cho biết thời gian tạo lệnh vẽ (xanh dương), phát lệnh (cam) và chờ lệnh hoàn tất (vàng). Hệ thống liên tục cập nhật biểu đồ trên màn hình, hiển thị biểu đồ cho từng Hoạt động hiển thị, bao gồm cả thanh điều hướng và thanh thông báo.
Đường màu xanh lục làm nổi bật ngưỡng 16 mili giây cho các thao tác kết xuất, nhờ đó, bạn có thể đánh giá tốc độ khung hình hiệu quả của ứng dụng so với mục tiêu 60 khung hình/giây (vì 1/60 giây tương đương với khoảng 16 mili giây). Nếu thấy các thao tác vượt qua đường màu xanh lục, bạn có thể phân tích thêm các thao tác đó bằng Systrace và các công cụ khác.
Theo mặc định, trên các thiết bị chạy Android 4.2 trở lên, tuỳ chọn cho nhà phát triển sẽ bị ẩn. Bạn có thể hiển thị các thông tin này bất cứ lúc nào bằng cách nhấn 7 lần vào Cài đặt > Giới thiệu về điện thoại > Số bản dựng trên bất kỳ thiết bị Android tương thích nào.
Cảnh báo StrictMode cho URI tệp
Phần bổ sung mới nhất cho công cụ StrictMode là một quy tắc ràng buộc chính sách cảnh báo khi ứng dụng của bạn hiển thị URI file://
cho hệ thống hoặc một ứng dụng khác. Trong một số trường hợp, ứng dụng nhận có thể không có quyền truy cập vào đường dẫn URI file://
, vì vậy, khi chia sẻ tệp giữa các ứng dụng, bạn nên sử dụng URI content://
(có quyền thích hợp). Chính sách mới này giúp bạn phát hiện và khắc phục những trường hợp như vậy. Nếu bạn đang tìm một cách thuận tiện để lưu trữ và hiển thị tệp cho các ứng dụng khác, hãy thử sử dụng trình cung cấp nội dung FileProvider
có trong Thư viện hỗ trợ.
Android 4.2
Chào mừng bạn đến với Android 4.2, phiên bản mới nhất của Jelly Bean!
Android 4.2 có các tính năng tối ưu hoá hiệu suất, giao diện người dùng hệ thống được làm mới và các tính năng mới tuyệt vời dành cho người dùng và nhà phát triển. Tài liệu này cung cấp thông tin tổng quan về các tính năng mới dành cho nhà phát triển.
Hãy xem tài liệu về API Android 4.2 để biết thông tin chi tiết về các API mới dành cho nhà phát triển.
Tìm hiểu thêm về các tính năng mới của Jelly Bean dành cho người dùng tại www.android.com.
Nhanh hơn, mượt mà hơn, phản hồi nhanh hơn
Android 4.2 được xây dựng dựa trên các điểm cải tiến về hiệu suất đã có trong Jelly Bean – điều phối thời gian vsync, lưu vào bộ đệm ba lần, giảm độ trễ cảm ứng và tăng cường đầu vào CPU – đồng thời bổ sung các tính năng tối ưu hoá mới giúp Android hoạt động nhanh hơn nữa.
Các điểm cải tiến trong trình kết xuất 2D tăng tốc phần cứng giúp các ảnh động phổ biến như cuộn và vuốt mượt mà và nhanh hơn. Cụ thể, bản vẽ được tối ưu hoá cho các lớp, hình cắt và một số hình dạng nhất định (hình chữ nhật bo tròn, hình tròn và hình bầu dục).
Nhiều tính năng tối ưu hoá kết xuất WebView giúp thao tác cuộn trang web trở nên mượt mà hơn, không bị giật và trễ.
Renderscript Compute của Android là nền tảng điện toán đầu tiên được chuyển để chạy trực tiếp trên GPU thiết bị di động. Công cụ này tự động tận dụng tài nguyên tính toán GPU bất cứ khi nào có thể, giúp cải thiện đáng kể hiệu suất cho đồ hoạ và xử lý hình ảnh. Mọi ứng dụng sử dụng Renderscript trên thiết bị được hỗ trợ đều có thể hưởng lợi ngay lập tức từ tính năng tích hợp GPU này mà không cần biên dịch lại.
Giao diện người dùng tinh tế, mới mẻ
Android 4.2 tinh chỉnh trải nghiệm người dùng Jelly Bean và mang đến các mẫu giao diện người dùng Android quen thuộc như thanh trạng thái, thanh hệ thống và cửa sổ thông báo cho tất cả máy tính bảng.
Tất cả kích thước màn hình hiện đều có thanh trạng thái ở trên cùng, với quyền truy cập kéo xuống vào thông báo và trình đơn Cài đặt nhanh mới. Thanh hệ thống quen thuộc xuất hiện ở dưới cùng, với các nút dễ dàng truy cập bằng cả hai tay. Bảng điều khiển ứng dụng cũng có trên tất cả kích thước màn hình.
Một máy tính bảng, nhiều người dùng
Giờ đây, một số người dùng có thể chia sẻ một máy tính bảng Android, trong đó mỗi người dùng có quyền truy cập thuận tiện vào một không gian người dùng chuyên dụng. Người dùng có thể chuyển sang không gian của họ chỉ bằng một lần chạm từ màn hình khoá.
Trên thiết bị nhiều người dùng, Android cung cấp cho mỗi người dùng một môi trường riêng biệt, bao gồm cả bộ nhớ thẻ SD được mô phỏng dành riêng cho người dùng. Người dùng cũng có màn hình chính, tiện ích, tài khoản, chế độ cài đặt, tệp và ứng dụng riêng, đồng thời hệ thống sẽ tách biệt các thành phần này. Tất cả người dùng đều dùng chung các dịch vụ hệ thống cốt lõi, nhưng hệ thống đảm bảo rằng ứng dụng và dữ liệu của mỗi người dùng vẫn được tách biệt. Do đó, mỗi người dùng sẽ có một thiết bị Android riêng.
Người dùng có thể cài đặt và gỡ cài đặt ứng dụng bất cứ lúc nào trong môi trường của riêng họ. Để tiết kiệm dung lượng lưu trữ, Google Play chỉ tải tệp APK xuống nếu người dùng khác chưa cài đặt tệp đó trên thiết bị. Nếu ứng dụng đã được cài đặt, Google Play sẽ ghi lại quá trình cài đặt của người dùng mới theo cách thông thường nhưng không tải một bản sao khác của ứng dụng xuống. Nhiều người dùng có thể chạy cùng một bản sao của tệp APK vì hệ thống tạo một phiên bản mới cho mỗi người dùng, bao gồm cả thư mục dữ liệu dành riêng cho người dùng.
Đối với nhà phát triển, tính năng hỗ trợ nhiều người dùng là minh bạch – ứng dụng của bạn không cần làm gì đặc biệt để chạy bình thường trong môi trường nhiều người dùng và bạn không cần thực hiện thay đổi nào trong các tệp APK hiện có hoặc đã phát hành. Hệ thống quản lý ứng dụng của bạn trong mỗi không gian người dùng giống như trong môi trường một người dùng.
Những cách mới để thu hút người dùng
Tiện ích trên màn hình khoá
Trong Android 4.2, người dùng có thể đặt tiện ích ứng dụng ngay trên màn hình khoá để truy cập tức thì vào nội dung ứng dụng yêu thích mà không cần mở khoá. Người dùng có thể thêm tối đa 5 tiện ích màn hình khoá, chọn trong số các tiện ích do các ứng dụng đã cài đặt cung cấp. Màn hình khoá hiển thị từng tiện ích trong bảng điều khiển riêng, cho phép người dùng vuốt sang trái và phải để xem các bảng điều khiển và tiện ích khác nhau.
Giống như tất cả tiện ích ứng dụng, tiện ích màn hình khoá có thể hiển thị bất kỳ loại nội dung nào và có thể chấp nhận hoạt động tương tác trực tiếp của người dùng. Các tiện ích này có thể hoàn toàn độc lập, chẳng hạn như một tiện ích cung cấp các chế độ điều khiển để phát nhạc, hoặc có thể cho phép người dùng chuyển thẳng đến một Hoạt động trong ứng dụng của bạn, sau khi mở khoá trong quá trình này nếu cần.
Đối với nhà phát triển, tiện ích màn hình khoá là một cách mới tuyệt vời để thu hút người dùng. Các thẻ này giúp bạn đưa nội dung của mình đến với người dùng ở một vị trí mà họ thường xuyên nhìn thấy, đồng thời mang đến cho bạn nhiều cơ hội hơn để đưa người dùng trực tiếp đến ứng dụng của bạn.
Bạn có thể tận dụng tính năng mới này bằng cách tạo một tiện ích ứng dụng mới hoặc mở rộng một tiện ích màn hình chính hiện có. Nếu ứng dụng của bạn đã có các tiện ích màn hình chính, bạn có thể mở rộng các tiện ích đó sang màn hình khoá với ít thay đổi nhất. Để mang lại cho người dùng trải nghiệm tối ưu, bạn có thể cập nhật tiện ích để sử dụng toàn bộ khu vực màn hình khoá khi có thể và đổi kích thước khi cần trên màn hình nhỏ hơn. Bạn cũng có thể thêm các tính năng vào tiện ích có thể đặc biệt hữu ích hoặc thuận tiện trên màn hình khoá.
Daydream
Chế độ thư giãn là một chế độ trình bảo vệ màn hình tương tác bắt đầu khi thiết bị của người dùng được gắn vào đế sạc hoặc đang sạc. Ở chế độ này, hệ thống sẽ chạy daydream (một dịch vụ nội dung từ xa do ứng dụng đã cài đặt cung cấp) dưới dạng trình bảo vệ màn hình của thiết bị. Người dùng có thể bật Daydream trong ứng dụng Cài đặt, sau đó chọn hình nền động để hiển thị.
Daydream kết hợp các tính năng tốt nhất của hình nền động và tiện ích trên màn hình chính, nhưng mạnh mẽ hơn. Các thẻ này cho phép bạn cung cấp mọi loại nội dung trong một bối cảnh hoàn toàn mới, với các hoạt động tương tác của người dùng như lật qua các bức ảnh, phát âm thanh hoặc video hoặc chuyển thẳng đến ứng dụng của bạn chỉ bằng một lần chạm.
Vì chế độ thư giãn có thể tự động bắt đầu khi thiết bị đang sạc hoặc sạc pin, nên chế độ này cũng là một cách tuyệt vời để ứng dụng của bạn hỗ trợ các loại trải nghiệm người dùng mới, chẳng hạn như chế độ thư giãn hoặc chế độ triển lãm, chế độ minh hoạ hoặc chế độ kiosk và "chế độ thu hút" — tất cả đều không yêu cầu phần cứng đặc biệt.
Daydream tương tự như Hoạt động và có thể làm mọi việc mà Hoạt động có thể làm — từ kết xuất hệ phân cấp giao diện người dùng (không sử dụng RemoteViews) đến vẽ trực tiếp bằng Canvas, OpenGL, SurfaceTexture, v.v. Các thành phần này có thể phát video và âm thanh, thậm chí có thể chấp nhận hoạt động tương tác trực tiếp của người dùng. Tuy nhiên, daydream không phải là Hoạt động, vì vậy, chúng không ảnh hưởng đến ngăn xếp lui hoặc xuất hiện trong phần Gần đây và không thể khởi chạy trực tiếp từ ứng dụng của bạn.
Việc triển khai chế độ mơ mộng rất đơn giản và bạn có thể tận dụng các thành phần giao diện người dùng cũng như tài nguyên mà bạn đã tạo cho các phần khác của ứng dụng. Bạn có thể cung cấp nhiều chế độ mơ mộng trong ứng dụng và có thể cung cấp nội dung cũng như chế độ cài đặt hiển thị riêng biệt cho từng chế độ.
Hỗ trợ màn hình ngoài
Android 4.2 ra mắt tính năng hỗ trợ nền tảng cho màn hình bên ngoài, không chỉ dừng lại ở tính năng phản chiếu — giờ đây, ứng dụng có thể nhắm đến nội dung riêng biệt cho một hoặc nhiều màn hình được đính kèm vào thiết bị Android. Các ứng dụng có thể dựa vào điều này để mang đến cho người dùng các loại trải nghiệm tương tác và giải trí mới.
Trình quản lý hiển thị
Các ứng dụng tương tác với màn hình thông qua một dịch vụ hệ thống mới của trình quản lý màn hình. Ứng dụng của bạn có thể liệt kê các màn hình và kiểm tra chức năng của từng màn hình, bao gồm kích thước, mật độ, tên hiển thị, mã nhận dạng, hỗ trợ video bảo mật, v.v. Ứng dụng của bạn cũng có thể nhận được lệnh gọi lại khi màn hình được thêm hoặc xoá hoặc khi chức năng của màn hình thay đổi để quản lý nội dung của bạn trên màn hình bên ngoài hiệu quả hơn.
Cửa sổ trình bày
Để dễ dàng hiển thị nội dung trên màn hình ngoài, khung này cung cấp một đối tượng giao diện người dùng mới có tên là Bản trình bày (Presentation) – một loại hộp thoại đại diện cho cửa sổ cho nội dung của ứng dụng trên một màn hình ngoài cụ thể. Ứng dụng của bạn chỉ cung cấp màn hình để sử dụng, giao diện cho cửa sổ và mọi nội dung riêng biệt để hiển thị. Presentation xử lý việc tăng cường tài nguyên và hiển thị nội dung của bạn theo đặc điểm của màn hình được nhắm đến.
Bản trình bày cho phép ứng dụng của bạn kiểm soát toàn bộ cửa sổ hiển thị từ xa và nội dung của cửa sổ đó, đồng thời cho phép bạn quản lý cửa sổ đó dựa trên các sự kiện đầu vào của người dùng, chẳng hạn như lượt nhấn phím, cử chỉ, sự kiện chuyển động, v.v. Bạn có thể sử dụng tất cả các công cụ thông thường để tạo giao diện người dùng và hiển thị nội dung trong Bản trình bày, từ việc tạo hệ phân cấp chế độ xem tuỳ ý đến việc sử dụng SurfaceView hoặc SurfaceTexture để vẽ trực tiếp vào cửa sổ cho nội dung phát trực tuyến hoặc bản xem trước của máy ảnh.
Lựa chọn hiển thị ưu tiên
Khi có nhiều màn hình ngoài, bạn có thể tạo bao nhiêu Bản trình bày tuỳ thích, với mỗi bản trình bày hiển thị nội dung riêng biệt trên một màn hình cụ thể. Trong nhiều trường hợp, bạn chỉ muốn hiển thị nội dung trên một màn hình ngoài, nhưng luôn hiển thị trên màn hình phù hợp nhất với nội dung của Bản trình bày. Do đó, hệ thống có thể giúp ứng dụng của bạn chọn màn hình phù hợp nhất để sử dụng.
Để tìm màn hình phù hợp nhất để sử dụng, ứng dụng của bạn có thể truy vấn trình quản lý màn hình để biết màn hình trình bày ưu tiên của hệ thống và nhận lệnh gọi lại khi màn hình đó thay đổi. Ngoài ra, bạn có thể sử dụng dịch vụ bộ định tuyến nội dung đa phương tiện, được mở rộng trong Android 4.2, để nhận thông báo khi tuyến video của hệ thống thay đổi. Theo mặc định, ứng dụng của bạn có thể hiển thị nội dung trong Hoạt động chính cho đến khi màn hình Trình bày ưu tiên được đính kèm. Khi đó, ứng dụng có thể tự động chuyển sang nội dung Trình bày trên màn hình ưu tiên. Ứng dụng của bạn cũng có thể sử dụng MediaRouteActionProvider và MediaRouteButton của bộ định tuyến nội dung đa phương tiện để cung cấp giao diện người dùng lựa chọn màn hình tiêu chuẩn.
Nội dung được bảo vệ
Đối với các ứng dụng xử lý nội dung được bảo vệ hoặc mã hoá, API hiển thị hiện báo cáo các tính năng video bảo mật của màn hình được đính kèm. Ứng dụng của bạn truy vấn màn hình để tìm hiểu xem màn hình đó có cung cấp đầu ra video an toàn hay cung cấp vùng đệm đồ hoạ được bảo vệ hay không, sau đó chọn luồng nội dung hoặc giải mã phù hợp để xem được nội dung. Để tăng cường bảo mật cho các đối tượng SurfaceView, ứng dụng của bạn có thể đặt cờ bảo mật để cho biết rằng nội dung không được xuất hiện trong ảnh chụp màn hình hoặc trên đầu ra màn hình không bảo mật, ngay cả khi phản chiếu.
Hiển thị không dây
Kể từ Android 4.2, người dùng trên các thiết bị được hỗ trợ có thể kết nối với màn hình ngoài qua Wi-Fi bằng tính năng Màn hình Wi-Fi (một giải pháp hiển thị không dây ngang hàng tuân thủ chương trình chứng nhận Miracast™). Khi kết nối màn hình không dây, người dùng có thể truyền trực tuyến mọi loại nội dung đến màn hình lớn, bao gồm cả ảnh, trò chơi, bản đồ và nhiều nội dung khác.
Các ứng dụng có thể tận dụng màn hình không dây giống như cách chúng tận dụng các màn hình bên ngoài khác mà không cần làm gì thêm. Hệ thống quản lý kết nối mạng và truyền trực tuyến nội dung của Bản trình bày hoặc ứng dụng khác đến màn hình không dây nếu cần.
Hỗ trợ RTL gốc
Android 4.2 ra mắt tính năng hỗ trợ đầy đủ cho bố cục RTL (từ phải sang trái), bao gồm cả tính năng phản chiếu bố cục. Với tính năng hỗ trợ RTL gốc, bạn có thể mang đến trải nghiệm ứng dụng tuyệt vời như nhau cho tất cả người dùng, cho dù ngôn ngữ của họ sử dụng chữ viết từ phải sang trái hay từ trái sang phải.
Khi người dùng chuyển đổi ngôn ngữ hệ thống sang một tập lệnh từ phải sang trái, hệ thống hiện sẽ tự động phản chiếu bố cục giao diện người dùng của ứng dụng và tất cả tiện ích thành phần hiển thị, ngoài việc phản chiếu bidi của các phần tử văn bản cho cả việc đọc và nhập ký tự.
Ứng dụng của bạn có thể tận dụng tính năng phản chiếu bố cục RTL trong ứng dụng mà không tốn nhiều công sức. Nếu muốn phản chiếu ứng dụng, bạn chỉ cần khai báo một thuộc tính mới trong tệp kê khai ứng dụng và thay đổi tất cả thuộc tính bố cục "trái/phải" thành các thuộc tính tương đương "bắt đầu/kết thúc" mới. Sau đó, hệ thống sẽ xử lý việc phản chiếu và hiển thị giao diện người dùng của bạn sao cho phù hợp.
Để kiểm soát chính xác giao diện người dùng của ứng dụng, Android 4.2 có các API mới cho phép bạn quản lý hướng bố cục, hướng văn bản, căn chỉnh văn bản, trọng lực và hướng ngôn ngữ trong các thành phần Khung hiển thị. Bạn thậm chí có thể tạo các phiên bản tuỳ chỉnh của bố cục, đối tượng có thể vẽ và các tài nguyên khác để hiển thị khi đang sử dụng tập lệnh từ phải sang trái.
Để giúp bạn gỡ lỗi và tối ưu hoá bố cục tuỳ chỉnh từ phải sang trái, công cụ HierarchyViewer hiện cho phép bạn xem các thuộc tính bắt đầu/kết thúc, hướng bố cục, hướng văn bản và căn chỉnh văn bản cho tất cả Khung hiển thị trong hệ phân cấp.
Các tính năng nâng cao cho ngôn ngữ quốc tế
Android 4.2 có nhiều tính năng tối ưu hoá phông chữ và ký tự cho người dùng quốc tế:
- Đối với người dùng Hàn Quốc, bạn có thể chọn phông chữ mới — Nanum (나눔글꼴) Gothic, một phông chữ unicode được thiết kế đặc biệt cho chữ viết tiếng Hàn.
- Cải thiện khả năng hỗ trợ văn bản dọc tiếng Nhật hiển thị trong WebView.
- Cải thiện khoảng cách giữa các chữ cái và vị trí của phông chữ mặc định cho các phông chữ Ấn Độ, Thái, Ả Rập và Do Thái.
Bàn phím Android mặc định cũng bao gồm một bộ từ điển mới cập nhật:
- Cải thiện từ điển cho tiếng Pháp (có hỗ trợ bigram), tiếng Anh và tiếng Nga
- Từ điển mới cho tiếng Đan Mạch, tiếng Hy Lạp, tiếng Phần Lan, tiếng Lithuania, tiếng Latvia, tiếng Ba Lan, tiếng Slovenia, tiếng Serbia, tiếng Thuỵ Điển, tiếng Thổ Nhĩ Kỳ
Các cách mới để tạo giao diện người dùng đẹp mắt
Mảnh lồng nhau
Để có nhiều quyền kiểm soát hơn đối với các thành phần giao diện người dùng và để các thành phần đó trở nên mô-đun hơn, Android 4.2 cho phép bạn lồng các Mảnh bên trong các Mảnh. Đối với bất kỳ Mảnh nào, Trình quản lý mảnh mới cho phép bạn chèn các Mảnh khác dưới dạng nút con trong hệ phân cấp Khung hiển thị.
Bạn có thể sử dụng các Mảnh lồng nhau theo nhiều cách, nhưng các Mảnh này đặc biệt hữu ích khi triển khai các thành phần giao diện người dùng động và có thể sử dụng lại bên trong một thành phần giao diện người dùng vốn dĩ cũng động và có thể sử dụng lại. Ví dụ: nếu sử dụng ViewPager để tạo các mảnh vuốt sang trái và phải, giờ đây, bạn có thể chèn các mảnh vào từng mảnh của trình chuyển trang thành phần hiển thị.
Để cho phép bạn tận dụng các Mảnh lồng nhau một cách rộng rãi hơn trong ứng dụng, chức năng này được thêm vào phiên bản mới nhất của Thư viện hỗ trợ Android.
Hỗ trợ tiếp cận
Hệ thống hiện giúp các dịch vụ hỗ trợ tiếp cận phân biệt giữa thao tác khám phá bằng thao tác chạm và cử chỉ hỗ trợ tiếp cận khi ở chế độ khám phá bằng thao tác chạm. Khi người dùng chạm vào màn hình, hệ thống sẽ thông báo cho dịch vụ rằng một lượt tương tác cảm ứng chung đã bắt đầu. Sau đó, tính năng này theo dõi tốc độ tương tác bằng cách chạm và xác định xem đó là thao tác khám phá bằng cách chạm (chậm) hay cử chỉ hỗ trợ tiếp cận (nhanh) và thông báo cho dịch vụ. Khi hoạt động tương tác bằng thao tác chạm kết thúc, hệ thống sẽ thông báo cho dịch vụ.
Hệ thống cung cấp một tuỳ chọn hỗ trợ tiếp cận toàn cầu mới cho phép dịch vụ hỗ trợ tiếp cận mở trình đơn Cài đặt nhanh dựa trên thao tác của người dùng. Android 4.2 cũng bổ sung một loại phản hồi hỗ trợ tiếp cận mới cho thiết bị Braille.
Để cung cấp cho các dịch vụ hỗ trợ tiếp cận thông tin chi tiết về ý nghĩa của Khung hiển thị cho mục đích hỗ trợ tiếp cận, khung này cung cấp các API mới để liên kết một Khung hiển thị làm nhãn cho một Khung hiển thị khác. Nhãn cho mỗi Khung hiển thị có sẵn cho các dịch vụ hỗ trợ tiếp cận thông qua AccessibilityNodeInfo.
Cải thiện máy ảnh bằng HDR
Android 4.2 giới thiệu giao diện phần cứng máy ảnh và quy trình mới để cải thiện hiệu suất. Trên các thiết bị được hỗ trợ, ứng dụng có thể sử dụng chế độ cảnh máy ảnh HDR mới để chụp ảnh bằng các kỹ thuật chụp ảnh có dải động cao.
Ngoài ra, khung này hiện cung cấp một API để cho phép các ứng dụng kiểm tra xem có thể tắt âm thanh chụp của máy ảnh hay không. Sau đó, ứng dụng có thể cho phép người dùng tắt âm thanh hoặc chọn âm thanh thay thế thay vì âm thanh chụp ảnh chuẩn.
Tính toán Renderscript
Trong Android 4.2, tính năng Điện toán Renderscript giới thiệu các tính năng tập lệnh mới, các tính năng tối ưu hoá mới và tích hợp GPU trực tiếp để đạt được hiệu suất cao nhất trong các phép tính toán.
Filterscript
Filterscript là một tập hợp con của Renderscript tập trung vào việc tối ưu hoá việc xử lý hình ảnh trên nhiều loại chipset thiết bị. Nhà phát triển có thể viết các thao tác xử lý hình ảnh trong Filterscript bằng API thời gian chạy Renderscript tiêu chuẩn, nhưng trong các quy tắc ràng buộc nghiêm ngặt hơn để đảm bảo khả năng tương thích rộng hơn và cải thiện khả năng tối ưu hoá trên CPU, GPU và DSP.
Filterscript là tập lệnh lý tưởng để tăng tốc phần cứng cho các thao tác điện toán và xử lý hình ảnh đơn giản, chẳng hạn như các thao tác có thể được viết cho chương trình đổ bóng mảnh OpenGL ES. Vì đặt ra một bộ hạn chế linh hoạt đối với phần cứng, nên các hoạt động của bạn được tối ưu hoá và tăng tốc trên nhiều loại chipset thiết bị hơn. Mọi ứng dụng nhắm đến API cấp 17 trở lên đều có thể sử dụng Filterscript.
Hàm nội tại của tập lệnh
Trong Android 4.2, Renderscript bổ sung tính năng hỗ trợ cho một tập hợp các hàm nội tại của tập lệnh – các hàm lọc nguyên gốc được tăng tốc được triển khai trước để giảm lượng mã bạn cần viết và đảm bảo rằng ứng dụng của bạn đạt được hiệu suất cao nhất có thể.
Các hàm nội tại có sẵn cho các tính năng kết hợp, làm mờ, ma trận màu, tích chập 3x3 và 5x5, bảng tra cứu theo kênh và chuyển đổi vùng đệm YUV của Android thành RGB.
Nhóm tập lệnh
Giờ đây, bạn có thể tạo nhóm tập lệnh Renderscript và thực thi tất cả các tập lệnh đó bằng một lệnh gọi duy nhất như thể chúng là một phần của một tập lệnh duy nhất. Điều này cho phép Renderscript tối ưu hoá việc thực thi các tập lệnh theo cách mà Renderscript không thể thực hiện nếu các tập lệnh được thực thi riêng lẻ.
Các điểm chuẩn xử lý hình ảnh Renderscript chạy trên nhiều phiên bản nền tảng Android (Android 4.0, 4.1 và 4.2) chỉ trong CPU trên thiết bị Galaxy Nexus.
Điểm chuẩn xử lý hình ảnh RenderScript so sánh các thao tác chạy bằng GPU + CPU với các thao tác chỉ chạy trong CPU trên cùng một thiết bị Nexus 10.
Nếu có biểu đồ hướng không tuần hoàn của các thao tác Renderscript để chạy, bạn có thể sử dụng lớp trình tạo để tạo một nhóm tập lệnh xác định các thao tác đó. Tại thời điểm thực thi, Renderscript sẽ tối ưu hoá thứ tự chạy và các kết nối giữa các thao tác này để đạt được hiệu suất tốt nhất.
Liên tục cải thiện tính năng tối ưu hoá
Khi bạn sử dụng Renderscript cho các phép tính toán, ứng dụng của bạn sẽ được hưởng lợi từ các cải tiến liên tục về hiệu suất và khả năng tối ưu hoá trong chính công cụ Renderscript, mà không ảnh hưởng đến mã ứng dụng hoặc không cần biên dịch lại.
Khi tính năng tối ưu hoá được cải thiện, các hoạt động của bạn sẽ thực thi nhanh hơn và trên nhiều chipset hơn mà bạn không cần làm gì cả. Biểu đồ ở bên phải nêu bật mức tăng hiệu suất nhờ các điểm cải tiến liên tục về việc tối ưu hoá Renderscript trên các phiên bản nền tảng Android liên tiếp.
Tính toán GPU
Renderscript Compute là nền tảng điện toán đầu tiên được chuyển để chạy trực tiếp trên GPU của thiết bị di động. Giờ đây, công cụ này sẽ tự động tận dụng tài nguyên tính toán GPU bất cứ khi nào có thể để cải thiện hiệu suất. Với tính năng tích hợp GPU, ngay cả các phép tính phức tạp nhất để xử lý đồ hoạ hoặc hình ảnh cũng có thể thực thi với hiệu suất được cải thiện đáng kể.
Mọi ứng dụng sử dụng Renderscript trên thiết bị được hỗ trợ đều có thể hưởng lợi ngay lập tức từ tính năng tích hợp GPU này mà không cần biên dịch lại. Máy tính bảng Nexus 10 là thiết bị đầu tiên hỗ trợ tính năng tích hợp này.
Các tuỳ chọn mới tích hợp sẵn cho nhà phát triển
Hệ thống Android 4.2 có nhiều tuỳ chọn mới dành cho nhà phát triển, giúp bạn dễ dàng tạo ra các ứng dụng có giao diện đẹp và hiệu suất cao. Các tuỳ chọn mới hiển thị các tính năng để gỡ lỗi và lập hồ sơ ứng dụng của bạn trên mọi thiết bị hoặc trình mô phỏng.
Trên các thiết bị chạy Android 4.2, tuỳ chọn cho nhà phát triển sẽ bị ẩn theo mặc định, giúp mang lại trải nghiệm tốt hơn cho người dùng. Bạn có thể hiển thị các tuỳ chọn dành cho nhà phát triển bất cứ lúc nào bằng cách nhấn 7 lần vào Cài đặt > Giới thiệu về điện thoại > Số bản dựng trên mọi thiết bị Android tương thích.
Các tuỳ chọn mới dành cho nhà phát triển trong Android 4.2 bao gồm:
- Tạo báo cáo lỗi – ngay lập tức chụp ảnh màn hình và chuyển thông tin trạng thái thiết bị vào bộ nhớ tệp cục bộ, sau đó đính kèm vào một email gửi đi mới.
- Báo cáo lỗi trong trình đơn nguồn – Thêm một tuỳ chọn mới vào trình đơn nguồn và phần cài đặt nhanh của thiết bị để tạo báo cáo lỗi (xem ở trên).
- Xác minh ứng dụng qua USB – Cho phép bạn tắt tính năng kiểm tra ứng dụng tải không qua cửa hàng ứng dụng qua USB, trong khi vẫn kiểm tra ứng dụng từ các nguồn khác như trình duyệt. Điều này có thể giúp đẩy nhanh quá trình phát triển trong khi vẫn bật tính năng bảo mật.
- Hiện bản cập nhật lớp phần cứng – Làm nhấp nháy lớp phần cứng có màu xanh lục khi lớp đó cập nhật.
- Hiển thị tình trạng vẽ nhiều lần của GPU – Làm nổi bật các khu vực vẽ nhiều lần của GPU.
- Force 4x MSAA (Buộc dùng 4x MSAA) – Bật 4x MSAA trong các ứng dụng Open GL ES 2.0.
- Mô phỏng màn hình phụ – Tạo một hoặc nhiều cửa sổ lớp phủ không an toàn trên màn hình hiện tại để sử dụng làm màn hình từ xa được mô phỏng. Bạn có thể kiểm soát kích thước và mật độ của màn hình được mô phỏng.
- Bật dấu vết OpenGL – Cho phép bạn theo dõi quá trình thực thi OpenGL bằng Logcat, Systrace hoặc ngăn xếp lệnh gọi trên glGetError.
Công nghệ nền tảng mới
Android 4.2 bao gồm nhiều công nghệ nền tảng nâng cao và mới để hỗ trợ các trường hợp sử dụng giao tiếp sáng tạo trên nhiều thiết bị phần cứng. Trong hầu hết các trường hợp, các công nghệ và tính năng nâng cao mới của nền tảng không ảnh hưởng trực tiếp đến ứng dụng của bạn. Vì vậy, bạn có thể hưởng lợi từ các công nghệ và tính năng này mà không cần sửa đổi gì.
Các tính năng bảo mật nâng cao
Mỗi bản phát hành Android đều có hàng chục tính năng nâng cao bảo mật để bảo vệ người dùng. Sau đây là một số điểm cải tiến trong Android 4.2:
- Xác minh ứng dụng – Người dùng có thể chọn bật tính năng "Xác minh ứng dụng" và yêu cầu trình xác minh ứng dụng kiểm tra ứng dụng trước khi cài đặt. Tính năng xác minh ứng dụng có thể cảnh báo người dùng nếu họ cố gắng cài đặt một ứng dụng có thể gây hại; nếu một ứng dụng đặc biệt xấu, thì tính năng này có thể chặn việc cài đặt.
- Có nhiều quyền kiểm soát hơn đối với tin nhắn dịch vụ – Android sẽ gửi thông báo nếu một ứng dụng cố gắng gửi tin nhắn SMS đến một mã ngắn sử dụng các dịch vụ cao cấp có thể gây ra khoản phí bổ sung. Người dùng có thể chọn cho phép ứng dụng gửi thông báo hoặc chặn thông báo.
- VPN luôn bật – Bạn có thể định cấu hình VPN để các ứng dụng không có quyền truy cập vào mạng cho đến khi thiết lập kết nối VPN. Điều này ngăn các ứng dụng gửi dữ liệu qua các mạng khác.
- Ghim chứng chỉ – Việc triển khai SSL libcore hiện hỗ trợ tính năng ghim chứng chỉ. Các miền được ghim sẽ nhận được thông báo lỗi xác thực chứng chỉ nếu chứng chỉ không liên kết với một nhóm chứng chỉ dự kiến. Điều này giúp bảo vệ khỏi nguy cơ xâm phạm của Tổ chức phát hành chứng chỉ.
- Cải thiện chế độ hiển thị quyền trên Android – Các quyền đã được sắp xếp thành các nhóm dễ hiểu hơn cho người dùng. Trong quá trình xem xét các quyền, người dùng có thể nhấp vào quyền để xem thêm thông tin chi tiết về quyền đó.
- Cải thiện độ cứng của installd – Trình nền installd không chạy dưới dạng người dùng gốc, giúp giảm bề mặt tấn công tiềm ẩn để nâng cao đặc quyền gốc.
- Củng cố tập lệnh khởi động – các tập lệnh khởi động hiện áp dụng ngữ nghĩa O_NOFOLLOW để ngăn chặn các cuộc tấn công liên quan đến đường liên kết tượng trưng.
- FORTIFY_SOURCE – Android hiện triển khai FORTIFY_SOURCE. Thư viện hệ thống và ứng dụng sử dụng tính năng này để ngăn chặn tình trạng hỏng bộ nhớ.
- Cấu hình mặc định của ContentProvider – Các ứng dụng nhắm đến API cấp 17 sẽ đặt "export" thành "false" theo mặc định cho mỗi ContentProvider, giảm bề mặt tấn công mặc định cho các ứng dụng.
- Mã hoá – Sửa đổi các phương thức triển khai mặc định của SecureRandom và Cipher.RSA để sử dụng OpenSSL. Thêm tính năng hỗ trợ SSLSocket cho TLSv1.1 và TLSv1.2 bằng OpenSSL 1.0.1
- Bản sửa lỗi bảo mật – Các thư viện nguồn mở đã nâng cấp có bản sửa lỗi bảo mật bao gồm WebKit, libpng, OpenSSL và LibXML. Android 4.2 cũng bao gồm các bản sửa lỗi cho các lỗ hổng dành riêng cho Android. Thông tin về các lỗ hổng này đã được cung cấp cho các thành viên của Liên minh điện thoại mở và các bản sửa lỗi có sẵn trong Dự án nguồn mở Android. Để cải thiện tính bảo mật, một số thiết bị chạy các phiên bản Android cũ hơn cũng có thể bao gồm các bản sửa lỗi này.
Ngăn xếp Bluetooth mới
Android 4.2 giới thiệu một ngăn xếp Bluetooth mới được tối ưu hoá để sử dụng với các thiết bị Android. Ngăn xếp Bluetooth mới do Google và Broadcom hợp tác phát triển sẽ thay thế ngăn xếp dựa trên BlueZ, đồng thời cải thiện khả năng tương thích và độ tin cậy.Âm thanh có độ trễ thấp
Android 4.2 cải thiện khả năng hỗ trợ phát âm thanh có độ trễ thấp, bắt đầu từ các điểm cải tiến trong bản phát hành Android 4.1 về độ trễ đầu ra âm thanh bằng cách sử dụng OpenSL ES, Soundpool và API bộ tạo âm. Những điểm cải tiến này phụ thuộc vào khả năng hỗ trợ phần cứng — các thiết bị cung cấp các tính năng âm thanh có độ trễ thấp này có thể quảng cáo khả năng hỗ trợ của chúng cho các ứng dụng thông qua hằng số tính năng phần cứng. Các API AudioManager mới được cung cấp để truy vấn tốc độ lấy mẫu âm thanh gốc và dung lượng bộ nhớ đệm, để sử dụng trên các thiết bị xác nhận tính năng này.
Giao diện phần cứng máy ảnh mới
Android 4.2 giới thiệu một cách triển khai mới của ngăn xếp máy ảnh. Hệ thống con máy ảnh bao gồm các hoạt động triển khai cho các thành phần trong quy trình máy ảnh, chẳng hạn như chụp ở chế độ chụp liên tục bằng các chế độ điều khiển xử lý.Giao diện phần cứng NFC và giao diện bộ điều khiển mới
Android 4.2 hỗ trợ các tay điều khiển dựa trên tiêu chuẩn NCI của NFC-Forum. NCI cung cấp một giao thức giao tiếp tiêu chuẩn giữa Trình điều khiển NFC (NFCC) và Máy chủ thiết bị, đồng thời ngăn xếp NFC mới được phát triển trong quá trình cộng tác giữa Google và Broadcom hỗ trợ giao thức này.Tối ưu hoá thời gian chạy Dalvik
Môi trường thời gian chạy Dalvik bao gồm các tính năng nâng cao về hiệu suất và bảo mật trên nhiều cấu trúc hơn:
- Hỗ trợ JIT x86 của Intel và hỗ trợ JIT MIPS của MIPS
- Tối ưu hoá các tham số thu gom rác cho các thiết bị có dung lượng > 512 MB
- Các phương thức triển khai mặc định của SecureRandom và Cipher.RSA hiện sử dụng OpenSSL
- Hỗ trợ SSLSocket cho TLSv1.1 và TLSv1.2 thông qua OpenSSL 1.0.1
- Hỗ trợ nội tại mới cho các phương thức abs, min, max và sqrt của StrictMath
- Cập nhật BouncyCastle lên phiên bản 1.47
- zlib cập nhật lên 1.27
- Cập nhật dlmalloc lên phiên bản 2.8.6
Android 4.1
Chào mừng bạn đến với Android 4.1, phiên bản đầu tiên của Jelly Bean!
Android 4.1 là phiên bản Android nhanh và mượt mà nhất từ trước đến nay. Chúng tôi đã cải tiến toàn bộ nền tảng và bổ sung các tính năng mới tuyệt vời cho người dùng và nhà phát triển. Tài liệu này cung cấp thông tin tổng quan về các tính năng mới dành cho nhà phát triển.
Hãy xem tài liệu về API Android 4.1 để biết thông tin chi tiết về các API mới dành cho nhà phát triển.
Tìm hiểu thêm về các tính năng của Jelly Bean dành cho người dùng tại www.android.com.
Nhanh hơn, mượt mà hơn, phản hồi nhanh hơn
Android 4.1 được tối ưu hoá để mang lại hiệu suất tốt nhất và độ trễ cảm ứng thấp nhất của Android, trong một giao diện người dùng trực quan, dễ dàng.
Để đảm bảo tốc độ khung hình nhất quán, Android 4.1 mở rộng thời gian vsync trên tất cả các bản vẽ và ảnh động do khung Android thực hiện. Mọi thứ đều chạy theo nhịp độ 16 mili giây của vsync (hiển thị đồng bộ hoá) – kết xuất ứng dụng, sự kiện chạm, thành phần hiển thị trên màn hình và làm mới màn hình – để các khung hình không bị trễ hoặc bị vượt quá.
Android 4.1 cũng thêm tính năng lưu ba lần vào bộ đệm trong quy trình đồ hoạ để hiển thị nhất quán hơn, giúp mọi thứ mượt mà hơn, từ thao tác cuộn đến phân trang và ảnh động.
Android 4.1 giảm độ trễ cảm ứng không chỉ bằng cách đồng bộ hoá thao tác chạm với thời gian vsync, mà còn bằng cách thực sự dự đoán vị trí ngón tay của bạn tại thời điểm làm mới màn hình. Điều này giúp phản hồi thao tác chạm nhanh và đồng nhất hơn. Ngoài ra, sau khoảng thời gian không hoạt động, Android sẽ áp dụng tính năng tăng cường đầu vào CPU tại sự kiện chạm tiếp theo để đảm bảo không có độ trễ.
Công cụ có thể giúp bạn khai thác tối đa hiệu suất của ứng dụng. Android 4.1 được thiết kế để hoạt động với một công cụ mới có tên là systrace. Công cụ này thu thập dữ liệu trực tiếp từ hạt nhân Linux để tạo ra thông tin tổng quan về các hoạt động của hệ thống. Dữ liệu được biểu thị dưới dạng một nhóm biểu đồ chuỗi thời gian xếp chồng theo chiều dọc, để giúp tách biệt các sự cố gián đoạn kết xuất và các vấn đề khác. Công cụ này hiện có trong SDK Android (Bộ công cụ R20 trở lên)
Nâng cao khả năng hỗ trợ tiếp cận
Các API mới cho dịch vụ hỗ trợ tiếp cận cho phép bạn xử lý các cử chỉ và quản lý tâm điểm hỗ trợ tiếp cận khi người dùng di chuyển qua các thành phần trên màn hình và nút điều hướng bằng các cử chỉ hỗ trợ tiếp cận, phụ kiện và phương thức nhập khác. Hệ thống TalkBack và tính năng khám phá bằng thao tác chạm được thiết kế lại để sử dụng tiêu điểm hỗ trợ tiếp cận nhằm giúp người dùng dễ dàng sử dụng hơn và cung cấp một bộ API hoàn chỉnh cho nhà phát triển.
Các dịch vụ hỗ trợ tiếp cận có thể liên kết hướng dẫn của riêng mình vào phần cài đặt Hỗ trợ tiếp cận để giúp người dùng định cấu hình và sử dụng các dịch vụ của họ.
Các ứng dụng sử dụng thành phần Chế độ xem chuẩn sẽ tự động kế thừa tính năng hỗ trợ cho các tính năng hỗ trợ tiếp cận mới mà không cần thay đổi mã. Các ứng dụng sử dụng Khung hiển thị tuỳ chỉnh có thể sử dụng các API nút hỗ trợ tiếp cận mới để cho biết những phần của Khung hiển thị mà các dịch vụ hỗ trợ tiếp cận quan tâm.
Hỗ trợ người dùng quốc tế
Văn bản hai chiều và các tính năng hỗ trợ ngôn ngữ khác
Android 4.1 giúp bạn tiếp cận nhiều người dùng hơn thông qua tính năng hỗ trợ văn bản hai chiều trong các phần tử TextView và EditText. Ứng dụng có thể hiển thị văn bản hoặc xử lý việc chỉnh sửa văn bản theo chữ viết từ trái sang phải hoặc từ phải sang trái. Các ứng dụng có thể sử dụng ngôn ngữ mới là tiếng Ả Rập và tiếng Do Thái cũng như các phông chữ liên quan.
Các loại hỗ trợ ngôn ngữ mới khác bao gồm:
- Các ngôn ngữ Ấn Độ khác: tiếng Kannada, tiếng Telugu và tiếng Malayalam
- Các ký tự biểu tượng cảm xúc mới trong Unicode phiên bản 6.0
- Hỗ trợ ký tự tốt hơn cho người dùng tiếng Nhật (hiển thị các phiên bản ký tự dành riêng cho tiếng Nhật khi ngôn ngữ hệ thống được đặt thành tiếng Nhật)
- Các ký tự Ả Rập được tối ưu hoá cho WebView ngoài các ký tự Ả Rập cho TextView
- Hỗ trợ Văn bản dọc trong WebView, bao gồm cả Văn bản Ruby và các ký tự Văn bản dọc bổ sung
- Kiểu chữ đậm tổng hợp hiện có sẵn cho tất cả phông chữ không có ký tự đậm chuyên dụng
Sơ đồ bàn phím mà người dùng có thể cài đặt
Nền tảng hiện hỗ trợ bản đồ bàn phím mà người dùng có thể cài đặt, chẳng hạn như cho các bàn phím quốc tế bổ sung và các loại bố cục đặc biệt. Theo mặc định, Android 4.1 bao gồm 27 sơ đồ bàn phím quốc tế, bao gồm cả Dvorak. Khi kết nối bàn phím, người dùng có thể chuyển đến ứng dụng Cài đặt và chọn một hoặc nhiều sơ đồ bàn phím mà họ muốn sử dụng cho bàn phím đó. Khi nhập, người dùng có thể chuyển đổi giữa các bản đồ phím bằng phím tắt (ctrl-space).
Bạn có thể tạo một ứng dụng để phát hành thêm bản đồ phím cho hệ thống. Tệp APK sẽ bao gồm các tài nguyên bố cục bàn phím trong đó, dựa trên định dạng sơ đồ bàn phím Android tiêu chuẩn. Ứng dụng có thể cung cấp thêm bố cục bàn phím cho người dùng bằng cách khai báo một broadcast receiver phù hợp cho ACTION_QUERY_KEYBOARD_LAYOUTS trong tệp kê khai.
Các cách mới để tạo giao diện người dùng đẹp mắt
Thông báo có thể mở rộng
Thông báo từ lâu đã là một tính năng độc đáo và phổ biến trên Android. Nhà phát triển có thể sử dụng các thông báo này để hiển thị thông tin quan trọng hoặc dựa trên thời gian cho người dùng trong thanh thông báo, bên ngoài giao diện người dùng thông thường của ứng dụng.
Android 4.1 mang đến một bản cập nhật lớn cho khung thông báo của Android. Giờ đây, ứng dụng có thể hiển thị các thông báo lớn hơn, phong phú hơn cho người dùng. Người dùng có thể mở rộng và thu gọn thông báo bằng cách chụm hoặc vuốt. Thông báo hỗ trợ các loại nội dung mới, bao gồm cả ảnh, có mức độ ưu tiên có thể định cấu hình và thậm chí có thể bao gồm nhiều thao tác.
Thông qua trình tạo thông báo được cải tiến, các ứng dụng có thể tạo thông báo sử dụng khu vực lớn hơn, cao tối đa 256 dp. Có 3 kiểu thông báo mẫu:
- BigTextStyle – một thông báo bao gồm đối tượng TextView nhiều dòng.
- BigInboxStyle – thông báo hiển thị mọi loại danh sách như thư, dòng tiêu đề, v.v.
- BigPictureStyle – thông báo giới thiệu nội dung hình ảnh như bitmap.
Ngoài các kiểu mẫu, bạn có thể tạo kiểu thông báo của riêng mình bằng bất kỳ Chế độ xem từ xa nào.
Ứng dụng có thể thêm tối đa 3 hành động vào một thông báo. Các hành động này sẽ hiển thị bên dưới nội dung thông báo. Các hành động này cho phép người dùng phản hồi trực tiếp thông tin trong thông báo theo những cách khác, chẳng hạn như qua email hoặc qua cuộc gọi điện thoại mà không cần truy cập vào ứng dụng.
Với thông báo có thể mở rộng, ứng dụng có thể cung cấp thêm thông tin cho người dùng một cách dễ dàng và theo yêu cầu. Người dùng vẫn có quyền kiểm soát và có thể nhấn và giữ bất kỳ thông báo nào để nhận thông tin về người gửi và tuỳ ý tắt các thông báo khác của ứng dụng.
Tiện ích ứng dụng có thể đổi kích thước
Android 4.1 giới thiệu các Tiện ích ứng dụng cải tiến có thể tự động đổi kích thước, dựa trên vị trí người dùng thả các tiện ích đó trên màn hình chính, kích thước mà người dùng mở rộng các tiện ích đó và không gian có sẵn trên màn hình chính. Các API tiện ích ứng dụng mới cho phép bạn tận dụng điều này để tối ưu hoá nội dung tiện ích ứng dụng khi kích thước của tiện ích thay đổi.
Khi một tiện ích thay đổi kích thước, hệ thống sẽ thông báo cho nhà cung cấp tiện ích của ứng dụng lưu trữ. Nhà cung cấp này có thể tải lại nội dung trong tiện ích nếu cần. Ví dụ: một tiện ích có thể hiển thị đồ hoạ lớn hơn, phong phú hơn hoặc chức năng hoặc tuỳ chọn bổ sung. Nhà phát triển vẫn có thể duy trì quyền kiểm soát kích thước tối đa và tối thiểu, đồng thời có thể cập nhật các tuỳ chọn tiện ích khác bất cứ khi nào cần.
Bạn cũng có thể cung cấp bố cục ngang và dọc riêng biệt cho các tiện ích của mình. Hệ thống sẽ tăng cường bố cục khi hướng màn hình thay đổi.
Giờ đây, bạn có thể hiển thị tiện ích ứng dụng trong trình chạy của bên thứ ba và các ứng dụng lưu trữ khác thông qua một Ý định liên kết mới (AppWidgetManager.ACTION_APPWIDGET_BIND).
Đơn giản hoá thao tác điều hướng trong công việc
Android 4.1 giúp bạn dễ dàng quản lý thao tác điều hướng "Lên" mà người dùng có thể sử dụng trong ứng dụng của bạn, đồng thời giúp đảm bảo trải nghiệm nhất quán cho người dùng.
Bạn có thể xác định thao tác điều hướng Mũi tên lên dự kiến cho từng thành phần Hoạt động của giao diện người dùng bằng cách thêm một thuộc tính XML mới trong tệp kê khai của ứng dụng. Trong thời gian chạy, khi các Hoạt động được khởi chạy, hệ thống sẽ trích xuất cây điều hướng Lên từ tệp kê khai và tự động tạo điều hướng Lên trong thanh thao tác. Những nhà phát triển khai báo tính năng điều hướng Lên trong tệp kê khai không cần quản lý tính năng điều hướng bằng lệnh gọi lại trong thời gian chạy nữa, mặc dù họ cũng có thể làm như vậy nếu cần.
Ngoài ra, bạn cũng có thể sử dụng lớp TaskStackBuilder mới để nhanh chóng tạo một ngăn xếp tác vụ tổng hợp nhằm bắt đầu ngay lập tức hoặc sử dụng khi một Hoạt động được khởi chạy từ PendingIntent. Việc tạo ngăn xếp tác vụ tổng hợp đặc biệt hữu ích khi người dùng chạy Hoạt động từ các chế độ xem từ xa, chẳng hạn như từ các tiện ích và thông báo trên Màn hình chính, vì việc này cho phép nhà phát triển cung cấp trải nghiệm nhất quán, được quản lý trên tính năng Điều hướng quay lại.
Ảnh động dễ dàng để khởi chạy Hoạt động
Bạn có thể sử dụng một lớp trợ giúp mới, ActivityOptions, để tạo và kiểm soát ảnh động hiển thị khi bạn khởi chạy Hoạt động. Thông qua lớp trình trợ giúp, bạn có thể chỉ định tài nguyên ảnh động tuỳ chỉnh để sử dụng khi hoạt động được khởi chạy hoặc yêu cầu ảnh động thu phóng mới bắt đầu từ bất kỳ hình chữ nhật nào mà bạn chỉ định trên màn hình và có thể bao gồm bitmap hình thu nhỏ.
Chuyển đổi sang chế độ Tắt đèn và Toàn màn hình
Các cờ giao diện người dùng hệ thống mới trong Khung hiển thị cho phép bạn chuyển đổi một cách rõ ràng từ giao diện người dùng ứng dụng thông thường (với thanh thao tác, thanh điều hướng và thanh hệ thống hiển thị) sang "chế độ tắt đèn" (với thanh trạng thái và thanh thao tác bị ẩn và thanh điều hướng bị mờ) hoặc "chế độ toàn màn hình" (với thanh trạng thái, thanh thao tác và thanh điều hướng đều bị ẩn).
Các loại Chế độ xem mới có thể điều khiển từ xa
Giờ đây, nhà phát triển có thể sử dụng thành phần hiển thị GridLayout và ViewStub trong các tiện ích và thông báo trên Màn hình chính. GridLayout cho phép bạn định cấu trúc nội dung của các thành phần hiển thị từ xa và quản lý các thành phần hiển thị con được căn chỉnh bằng hệ phân cấp giao diện người dùng nông hơn. ViewStub là một Khung hiển thị vô hình, có kích thước bằng 0, có thể dùng để tăng cường từng phần tài nguyên bố cục trong thời gian chạy.
Xem trước hình nền động
Android 4.1 giúp người dùng dễ dàng tìm và cài đặt Hình nền động từ các ứng dụng có hình nền động. Nếu ứng dụng của bạn có Hình nền động, thì giờ đây, bạn có thể bắt đầu một Hoạt động (ACTION_CHANGE_LIVE_WALLPAPER) để hiển thị cho người dùng bản xem trước Hình nền động từ ứng dụng của riêng bạn. Từ bản xem trước, người dùng có thể trực tiếp tải Hình nền động.
Ảnh người liên hệ có độ phân giải cao hơn
Với Android 4.1, bạn có thể lưu trữ ảnh người liên hệ có kích thước lên đến 720 x 720, giúp danh bạ trở nên phong phú và cá nhân hơn. Các ứng dụng có thể lưu trữ và truy xuất ảnh người liên hệ ở kích thước đó hoặc sử dụng bất kỳ kích thước nào khác nếu cần. Kích thước ảnh tối đa được hỗ trợ trên các thiết bị cụ thể có thể khác nhau, vì vậy, ứng dụng nên truy vấn trình cung cấp danh bạ tích hợp sẵn tại thời gian chạy để lấy kích thước tối đa cho thiết bị hiện tại.
Các loại dữ liệu đầu vào và chức năng mới
Tìm hiểu về các thiết bị đang được thêm và xoá
Ứng dụng có thể đăng ký nhận thông báo khi có thiết bị đầu vào mới được đính kèm, qua USB, Bluetooth hoặc bất kỳ loại kết nối nào khác. Các ứng dụng có thể sử dụng thông tin này để thay đổi trạng thái hoặc chức năng khi cần. Ví dụ: một trò chơi có thể nhận được thông báo về việc một bàn phím hoặc cần điều khiển mới được đính kèm, cho biết có người chơi mới.
Truy vấn chức năng của thiết bị đầu vào
Android 4.1 bao gồm các API cho phép ứng dụng và trò chơi tận dụng tối đa tất cả thiết bị đầu vào đã kết nối và có sẵn.
Ứng dụng có thể truy vấn trình quản lý thiết bị để liệt kê tất cả thiết bị đầu vào hiện đang được đính kèm và tìm hiểu về chức năng của từng thiết bị.
Điều khiển bộ rung trên thiết bị đầu vào
Ngoài các chức năng khác, giờ đây, ứng dụng có thể sử dụng bất kỳ dịch vụ rung nào được liên kết với thiết bị đầu vào được đính kèm, chẳng hạn như cho tay điều khiển Rumble Pak.
Ảnh động và đồ hoạ
Vsync cho ứng dụng
Việc mở rộng vsync trên khung Android sẽ giúp tốc độ khung hình nhất quán hơn và giao diện người dùng mượt mà, ổn định. Để các ứng dụng cũng được hưởng lợi, Android 4.1 mở rộng thời gian vsync cho tất cả bản vẽ và ảnh động do ứng dụng khởi tạo. Điều này cho phép các thành phần này tối ưu hoá các thao tác trên luồng giao diện người dùng và cung cấp cơ sở thời gian ổn định để đồng bộ hoá.
Các ứng dụng có thể tận dụng tính năng đồng bộ hoá khung hình miễn phí thông qua khung ảnh động của Android. Khung ảnh động hiện sử dụng tính năng đồng bộ hoá vsync để tự động xử lý việc đồng bộ hoá trên các trình tạo ảnh động.
Đối với các trường hợp sử dụng chuyên biệt, ứng dụng có thể truy cập vào thời gian vsync thông qua các API do lớp Choreographer mới hiển thị. Ứng dụng có thể yêu cầu vô hiệu hoá trên khung vsync tiếp theo – đây là một cách hay để lên lịch ảnh động khi ứng dụng không sử dụng khung ảnh động. Để sử dụng nâng cao hơn, ứng dụng có thể đăng một lệnh gọi lại mà lớp Choreographer sẽ chạy trên khung hình tiếp theo.
Các loại hiệu ứng chuyển đổi và hành động ảnh động mới
Khung ảnh động hiện cho phép bạn xác định các thao tác bắt đầu và kết thúc cần thực hiện khi chạy ảnh động ViewPropertyAnimator, để giúp đồng bộ hoá các thao tác đó với các ảnh động hoặc thao tác khác trong ứng dụng. Thao tác này có thể chạy bất kỳ đối tượng nào có thể chạy. Ví dụ: đối tượng có thể chạy có thể chỉ định một ảnh động khác để bắt đầu khi ảnh động trước đó kết thúc.
Giờ đây, bạn cũng có thể chỉ định rằng ViewPropertyAnimator sử dụng một lớp trong quá trình tạo ảnh động. Trước đây, phương pháp hay nhất để tạo ảnh động cho các thành phần hiển thị phức tạp là thiết lập một lớp trước khi bắt đầu ảnh động, sau đó xử lý sự kiện onAnimationEnd() để xoá lớp đó khi ảnh động kết thúc. Giờ đây, phương thức withLayer() trên ViewPropertyAnimator giúp đơn giản hoá quy trình này bằng một lệnh gọi phương thức duy nhất.
Một loại chuyển đổi mới trong LayoutTransition cho phép bạn tự động hoá ảnh động để phản hồi tất cả các thay đổi về bố cục trong ViewGroup.
Các loại kết nối mới
Android Beam
Android Beam là một công nghệ phổ biến dựa trên NFC, cho phép người dùng chia sẻ tức thì chỉ bằng cách chạm hai điện thoại có hỗ trợ NFC vào nhau.
Trong Android 4.1, Android Beam giúp bạn dễ dàng chia sẻ hình ảnh, video hoặc các tải trọng khác bằng cách tận dụng Bluetooth để chuyển dữ liệu. Khi người dùng kích hoạt một lượt chuyển, Android Beam sẽ chuyển từ NFC sang Bluetooth, giúp bạn dễ dàng quản lý việc chuyển tệp từ thiết bị này sang thiết bị khác.
Khám phá dịch vụ mạng Wi-Fi
Android 4.1 ra mắt tính năng hỗ trợ khám phá dịch vụ dựa trên DNS đa địa chỉ, cho phép các ứng dụng tìm và kết nối với các dịch vụ do các thiết bị ngang hàng cung cấp qua mạng Wi-Fi, bao gồm cả thiết bị di động, máy in, máy ảnh, trình phát nội dung đa phương tiện và các thiết bị khác. Nhà phát triển có thể tận dụng tính năng khám phá dịch vụ mạng Wi-Fi để xây dựng các trò chơi và trải nghiệm ứng dụng trên nhiều nền tảng hoặc nhiều người chơi.
Khi sử dụng API khám phá dịch vụ, ứng dụng có thể tạo và đăng ký bất kỳ loại dịch vụ nào để mọi thiết bị hỗ trợ NSD khác có thể khám phá. Dịch vụ được quảng cáo bằng cách truyền nhiều địa chỉ trên mạng bằng cách sử dụng giá trị nhận dạng chuỗi mà con người có thể đọc được, cho phép người dùng dễ dàng xác định loại dịch vụ hơn.
Các thiết bị tiêu dùng có thể sử dụng API này để quét và khám phá các dịch vụ có sẵn trên các thiết bị được kết nối với mạng Wi-Fi cục bộ. Sau khi khám phá, ứng dụng có thể sử dụng API để phân giải dịch vụ thành địa chỉ IP và cổng để thiết lập kết nối ổ cắm.
Bạn có thể tận dụng API này để xây dựng các tính năng mới vào ứng dụng của mình. Ví dụ: bạn có thể cho phép người dùng kết nối với webcam, máy in hoặc ứng dụng trên một thiết bị di động khác hỗ trợ kết nối Wi-Fi ngang hàng.
Khám phá dịch vụ Wi-Fi P2P
Ice Cream Sandwich đã ra mắt tính năng hỗ trợ Wi-Fi ngang hàng (P2P), một công nghệ cho phép các ứng dụng khám phá và ghép nối trực tiếp qua kết nối ngang hàng băng thông cao (tuân thủ chương trình chứng nhận Wi-Fi Direct™ của Wi-Fi Alliance). Wi-Fi P2P là cách lý tưởng để chia sẻ nội dung nghe nhìn, ảnh, tệp và các loại dữ liệu và phiên khác, ngay cả khi không có mạng di động hoặc Wi-Fi.
Android 4.1 nâng cao Wi-Fi P2P, thêm tính năng hỗ trợ API để khám phá dịch vụ được liên kết trước. Tính năng khám phá dịch vụ được liên kết trước cho phép ứng dụng của bạn nhận được thông tin hữu ích hơn từ các thiết bị lân cận về các dịch vụ mà chúng hỗ trợ, trước khi cố gắng kết nối. Ứng dụng có thể bắt đầu khám phá một dịch vụ cụ thể và lọc danh sách thiết bị đã khám phá thành những thiết bị thực sự hỗ trợ dịch vụ hoặc ứng dụng mục tiêu.
Ví dụ: điều này có nghĩa là ứng dụng của bạn chỉ có thể khám phá những thiết bị là "máy in" hoặc có một trò chơi cụ thể, thay vì khám phá tất cả thiết bị Wi-Fi P2P ở gần. Mặt khác, ứng dụng của bạn có thể quảng cáo dịch vụ mà ứng dụng cung cấp cho các thiết bị khác. Các thiết bị này có thể khám phá dịch vụ đó rồi thương lượng kết nối. Điều này giúp đơn giản hoá đáng kể việc tìm kiếm và ghép nối cho người dùng, đồng thời cho phép các ứng dụng tận dụng Wi-Fi P2P hiệu quả hơn.
Với tính năng khám phá dịch vụ Wi-Fi P2P, bạn có thể tạo ứng dụng và trò chơi nhiều người chơi có thể chia sẻ ảnh, video, lối chơi, điểm số hoặc hầu hết mọi nội dung khác mà không cần Internet hoặc mạng di động. Người dùng của bạn chỉ có thể kết nối bằng kết nối ngang hàng trực tiếp, nhờ đó tránh sử dụng băng thông di động.
Quản lý băng thông mạng
Android 4.1 giúp ứng dụng quản lý mức sử dụng dữ liệu một cách phù hợp khi thiết bị kết nối với mạng có đo lượng dữ liệu, bao gồm cả tính năng chia sẻ Internet với điểm phát sóng di động. Các ứng dụng có thể truy vấn xem mạng hiện tại có đo lượng dữ liệu hay không trước khi bắt đầu tải xuống một tệp có dung lượng lớn. Nếu không, người dùng có thể phải trả phí tương đối cao. Thông qua API này, giờ đây, bạn có thể nắm rõ những mạng nào nhạy cảm với mức sử dụng dữ liệu và quản lý hoạt động mạng của mình cho phù hợp.
Các tính năng mới của nội dung nghe nhìn
Quyền truy cập vào bộ mã hoá và giải mã nội dung nghe nhìn
Android 4.1 cung cấp quyền truy cập cấp thấp vào bộ mã hoá và giải mã phần cứng và phần mềm của nền tảng. Các ứng dụng có thể truy vấn hệ thống để khám phá những bộ mã hoá và giải mã nội dung nghe nhìn cấp thấp có trên thiết bị, sau đó sử dụng các bộ mã hoá và giải mã đó theo cách cần thiết. Ví dụ: giờ đây, bạn có thể tạo nhiều thực thể của bộ mã hoá và giải mã nội dung nghe nhìn, thêm bộ đệm đầu vào vào hàng đợi và nhận bộ đệm đầu ra. Ngoài ra, khung bộ mã hoá và giải mã nội dung nghe nhìn còn hỗ trợ nội dung được bảo vệ. Ứng dụng có thể truy vấn một bộ mã hoá và giải mã có sẵn có thể phát nội dung được bảo vệ bằng giải pháp DRM có trên thiết bị.
Âm thanh qua cổng USB
Tính năng hỗ trợ đầu ra âm thanh qua USB cho phép nhà cung cấp phần cứng xây dựng phần cứng như bệ âm thanh giao tiếp với các thiết bị Android. Chức năng này cũng được hiển thị thông qua Bộ phát triển phụ kiện mở (ADK) của Android để tất cả nhà phát triển đều có cơ hội tạo phần cứng của riêng mình.
Kích hoạt bản ghi âm
Android hiện cho phép bạn kích hoạt tính năng ghi âm dựa trên việc hoàn tất một bản phát âm thanh. Điều này hữu ích trong các trường hợp như phát lại âm báo để nhắc người dùng bắt đầu nói nhằm ghi lại giọng nói của họ. Tính năng này giúp bạn đồng bộ hoá bản ghi để không ghi âm âm thanh đang phát và tránh việc bản ghi bắt đầu quá muộn.
Âm thanh đa kênh
Android 4.1 hỗ trợ âm thanh đa kênh trên các thiết bị có đầu ra âm thanh đa kênh qua cổng HDMI. Âm thanh đa kênh cho phép bạn mang đến trải nghiệm đa phương tiện phong phú cho người dùng đối với các ứng dụng như trò chơi, ứng dụng âm nhạc và trình phát video. Đối với các thiết bị không có phần cứng được hỗ trợ, Android sẽ tự động kết hợp âm thanh theo số lượng kênh mà thiết bị hỗ trợ (thường là âm thanh nổi).
Android 4.1 cũng bổ sung tính năng hỗ trợ tích hợp để mã hoá/giải mã âm thanh AAC 5.1.
Xử lý trước âm thanh
Nhà phát triển có thể áp dụng các hiệu ứng xử lý trước cho âm thanh đang được ghi, chẳng hạn như áp dụng tính năng khử tiếng ồn để cải thiện chất lượng ghi âm giọng nói, tính năng huỷ tiếng vọng cho tiếng vọng âm thanh và tính năng tự động kiểm soát độ lợi cho âm thanh có mức âm lượng không nhất quán. Những ứng dụng yêu cầu bản ghi âm chất lượng cao và sạch sẽ được hưởng lợi từ các trình xử lý trước này.
Chuỗi âm thanh
MediaPlayer hỗ trợ nối các luồng âm thanh với nhau để phát tệp âm thanh mà không bị tạm dừng. Điều này hữu ích cho các ứng dụng yêu cầu chuyển đổi liền mạch giữa các tệp âm thanh, chẳng hạn như trình phát nhạc để phát các đĩa nhạc có các bản nhạc liên tục hoặc trò chơi.
Bộ định tuyến nội dung đa phương tiện
Các API mới MediaRouter, MediaRouteActionProvider và MediaRouteButton cung cấp cơ chế và giao diện người dùng tiêu chuẩn để chọn nơi phát nội dung nghe nhìn. Tính năng hỗ trợ được tích hợp sẵn cho tai nghe có dây, tai nghe và loa Bluetooth a2dp. Bạn cũng có thể thêm các tuỳ chọn định tuyến của riêng mình trong ứng dụng của mình.
Tính toán Renderscript
Android 4.1 mở rộng tính năng điện toán Renderscript để giúp bạn linh hoạt hơn. Giờ đây, bạn có thể lấy mẫu hoạ tiết trong tập lệnh điện toán Renderscript và có thể sử dụng pragma mới để xác định độ chính xác dấu phẩy động mà tập lệnh của bạn yêu cầu. Điều này cho phép bạn bật lệnh NEON, chẳng hạn như các phép toán vectơ nhanh trên đường dẫn CPU, điều không thể thực hiện được với tiêu chuẩn IEEE 754-2008 đầy đủ.
Giờ đây, bạn có thể gỡ lỗi tập lệnh điện toán Renderscript trên trình mô phỏng và thiết bị phần cứng dựa trên x86. Bạn cũng có thể xác định nhiều hạt nhân kiểu gốc trong một tệp nguồn Renderscript.
Trình duyệt Android và WebView
Trong Android 4.1, Trình duyệt Android và WebView có các tính năng nâng cao sau:
- Trải nghiệm người dùng tốt hơn với video HTML5, bao gồm cả tính năng chạm để phát/tạm dừng và chuyển đổi mượt mà từ chế độ nội tuyến sang chế độ toàn màn hình.
- Cải thiện tốc độ kết xuất và giảm mức sử dụng bộ nhớ để có hiệu suất cuộn và thu phóng tốt hơn.
- Cải thiện hiệu suất ảnh động HTML5/CSS3/Canvas.
- Cải thiện tính năng nhập văn bản.
- Cập nhật Công cụ JavaScript (V8) để cải thiện hiệu suất JavaScript.
- Hỗ trợ quy cách mới cập nhật về tính năng Quay video và chụp ảnh trên HTML5 (thuộc tính "capture" trên các phần tử input type=file).
API và dịch vụ của Google
Để mở rộng khả năng của Android hơn nữa, chúng tôi cung cấp một số dịch vụ mới cho Android.
Google Cloud Messaging cho Android
Google Cloud Messaging (GCM) là một dịch vụ cho phép nhà phát triển gửi dữ liệu tin nhắn ngắn đến người dùng trên thiết bị Android mà không cần giải pháp đồng bộ hoá độc quyền.
GCM xử lý tất cả thông tin chi tiết về việc xếp hàng và phân phối tin nhắn một cách hiệu quả đến các thiết bị Android được nhắm đến. API này hỗ trợ truyền tin nhiều địa chỉ và có thể truyền đến tối đa 1.000 thiết bị đã kết nối cùng lúc bằng một yêu cầu. Giao thức này cũng hỗ trợ trọng tải thông báo, tức là ngoài việc gửi thông báo gãi ngứa đến một ứng dụng trên thiết bị, nhà phát triển có thể gửi tối đa 4K dữ liệu.
Google Cloud Messaging hoàn toàn miễn phí cho tất cả nhà phát triển và bạn có thể dễ dàng đăng ký. Hãy xem trang Nhắn tin qua đám mây của Google để đăng ký, tải xuống và xem tài liệu.
Mã hoá ứng dụng
Kể từ Android 4.1, Google Play sẽ giúp bảo vệ tài sản ứng dụng bằng cách mã hoá tất cả ứng dụng có tính phí bằng khoá dành riêng cho thiết bị trước khi phân phối và lưu trữ trên thiết bị.
Bản cập nhật ứng dụng thông minh
Cập nhật ứng dụng thông minh là một tính năng mới của Google Play, giúp mang đến cách thức phân phối bản cập nhật ứng dụng hiệu quả hơn cho các thiết bị. Giờ đây, khi nhà phát triển phát hành bản cập nhật, Google Play chỉ phân phối các bit đã thay đổi cho thiết bị thay vì toàn bộ tệp APK. Điều này giúp các bản cập nhật nhẹ hơn trong hầu hết các trường hợp, nhờ đó, người dùng có thể tải xuống nhanh hơn, tiết kiệm pin của thiết bị và tiết kiệm mức sử dụng băng thông trong gói dữ liệu di động của họ. Trung bình, một bản cập nhật ứng dụng thông minh có kích thước bằng 1/3 kích thước của một bản cập nhật APK đầy đủ.
Dịch vụ Google Play
Dịch vụ Google Play giúp nhà phát triển tích hợp các dịch vụ của Google (chẳng hạn như xác thực) vào các ứng dụng được phân phối thông qua Google Play.
Dịch vụ Google Play được Google Play tự động cấp cho thiết bị của người dùng cuối, vì vậy, bạn chỉ cần có thư viện ứng dụng khách mỏng trong ứng dụng của mình.
Vì ứng dụng của bạn chỉ chứa thư viện ứng dụng nhỏ, nên bạn có thể tận dụng các dịch vụ này mà không làm tăng đáng kể kích thước tải xuống và mức sử dụng bộ nhớ. Ngoài ra, Google Play sẽ cung cấp bản cập nhật thường xuyên cho các dịch vụ này mà nhà phát triển không cần phải phát hành bản cập nhật ứng dụng để tận dụng các bản cập nhật đó.
Để biết thêm thông tin về các API có trong Dịch vụ Google Play, hãy xem trang dành cho nhà phát triển về Dịch vụ Google Play.