Hôm nay, chúng tôi phát hành phiên bản beta đầu tiên của Android 17, tiếp tục nỗ lực xây dựng một nền tảng ưu tiên quyền riêng tư, tính bảo mật và hiệu suất tinh tế. Bản dựng này tiếp tục nỗ lực của chúng tôi trong việc tạo ra các ứng dụng Android có khả năng thích ứng cao hơn, giới thiệu những điểm cải tiến đáng kể cho các chức năng của camera và nội dung nghe nhìn, các công cụ mới để tối ưu hoá khả năng kết nối và mở rộng hồ sơ cho các thiết bị đồng hành. Bản phát hành này cũng nhấn mạnh một thay đổi cơ bản trong cách chúng tôi cung cấp các bản phát hành mới cho cộng đồng nhà phát triển, từ mô hình Bản dùng trước cho nhà phát triển truyền thống sang chương trình Android Canary
Ngoài Bản dùng trước cho nhà phát triển
Android đã thay thế "Bản dùng trước cho nhà phát triển" truyền thống bằng một kênh Canary liên tục. Mô hình "luôn bật" mới này mang lại 3 lợi ích chính:
- Truy cập nhanh hơn: Các tính năng và API sẽ xuất hiện trong Canary ngay khi vượt qua quy trình kiểm thử nội bộ, thay vì phải đợi bản phát hành hằng quý.
- Độ ổn định cao hơn: Việc "kiểm thử trong thực tế" sớm trong Canary giúp mang lại trải nghiệm Beta hoàn thiện hơn với các API mới và các thay đổi về hành vi gần như là phiên bản cuối cùng.
- Kiểm thử dễ dàng hơn: Canary hỗ trợ các bản cập nhật qua mạng (không cần nhấp nháy thủ công nữa) và là một kênh cập nhật riêng biệt, dễ dàng tích hợp hơn với quy trình CI, đồng thời cho phép bạn đưa ra ý kiến phản hồi ngay lập tức về những thay đổi tiềm ẩn sắp tới trong thời gian sớm nhất.
Lịch phát hành Android 17
Chúng tôi sẽ nhanh chóng chuyển từ giai đoạn Beta này sang cột mốc Ổn định nền tảng, dự kiến vào tháng 3. Tại cột mốc này, chúng tôi sẽ cung cấp các API SDK/NDK hoàn chỉnh và các hành vi hoàn chỉnh liên quan trực tiếp đến ứng dụng. Kể từ thời điểm đó, bạn sẽ có vài tháng để hoàn tất quy trình kiểm thử trước khi phát hành phiên bản cuối cùng.
Một năm phát hành
Chúng tôi dự định tiếp tục cung cấp các bản cập nhật cho Android 17 trong một loạt bản phát hành hằng quý. Bản phát hành sắp tới trong quý 2 là bản phát hành duy nhất mà chúng tôi giới thiệu những thay đổi dự kiến về hành vi làm gián đoạn ứng dụng. Chúng tôi dự định phát hành một SDK phụ vào quý 4 với các API và tính năng bổ sung.
Các hạn chế về hướng và khả năng thay đổi kích thước
Với việc phát hành Android 17 Beta, chúng tôi sẽ chuyển sang giai đoạn tiếp theo trong lộ trình thích ứng của mình: Android 17 (cấp độ API 37) sẽ loại bỏ lựa chọn không tham gia của nhà phát triển đối với các hạn chế về hướng và khả năng đổi kích thước trên thiết bị có màn hình lớn (sw > 600 dp).
Khi nhắm đến SDK 37, ứng dụng của bạn phải sẵn sàng thích ứng. Người dùng mong đợi các ứng dụng của họ hoạt động ở mọi nơi – cho dù là khi làm nhiều việc cùng lúc trên máy tính bảng, mở thiết bị hay sử dụng môi trường cửa sổ kiểu máy tính – và họ mong đợi giao diện người dùng sẽ lấp đầy không gian và tôn trọng tư thế thiết bị của họ.
Những thay đổi chính đối với SDK 37
Các ứng dụng nhắm đến Android 17 phải đảm bảo khả năng tương thích với giai đoạn loại bỏ các thuộc tính tệp kê khai và API thời gian chạy được giới thiệu trong Android 16. Khi chạy trên màn hình lớn (kích thước nhỏ hơn ≥ 600 dp), các thuộc tính và API sau đây sẽ bị bỏ qua:
| Thuộc tính/API tệp kê khai | Giá trị bị bỏ qua |
| screenOrientation | portrait, reversePortrait, sensorPortrait, userPortrait, landscape, reverseLandscape, sensorLandscape, userLandscape |
| setRequestedOrientation() | portrait, reversePortrait, sensorPortrait, userPortrait, landscape, reverseLandscape, sensorLandscape, userLandscape |
| resizeableActivity | tất cả |
| minAspectRatio | tất cả |
| maxAspectRatio | tất cả |
Trường hợp miễn trừ và quyền kiểm soát của người dùng
Những thay đổi này dành riêng cho màn hình lớn; chúng không áp dụng cho màn hình nhỏ hơn sw600dp (bao gồm cả điện thoại có kiểu dáng truyền thống). Ngoài ra, các ứng dụng được phân loại là trò chơi (dựa trên cờ android:appCategory) sẽ được miễn các hạn chế này.
Điều quan trọng cần lưu ý là người dùng vẫn có quyền kiểm soát. Họ có thể chọn sử dụng/không sử dụng hành vi mặc định của ứng dụng một cách rõ ràng thông qua chế độ cài đặt tỷ lệ khung hình của hệ thống.
Nội dung cập nhật về các thay đổi đối với cấu hình
Để cải thiện khả năng tương thích của ứng dụng và giúp giảm thiểu tình trạng gián đoạn quá trình phát video, mất dữ liệu đầu vào và các loại mất trạng thái gây gián đoạn khác, chúng tôi đang cập nhật hành vi mặc định cho tính năng tạo lại Hoạt động. Kể từ Android 17, theo mặc định, hệ thống sẽ không khởi động lại các hoạt động đối với những thay đổi cụ thể về cấu hình mà thường không yêu cầu tạo lại giao diện người dùng, bao gồm cả CONFIG_KEYBOARD, CONFIG_KEYBOARD_HIDDEN, CONFIG_NAVIGATION, CONFIG_UI_MODE (khi chỉ thay đổi UI_MODE_TYPE_DESK), CONFIG_TOUCHSCREEN và CONFIG_COLOR_MODE. Thay vào đó, các hoạt động đang chạy sẽ chỉ nhận được những thông tin cập nhật này thông qua onConfigurationChanged. Nếu ứng dụng của bạn dựa vào việc khởi động lại hoàn toàn để tải lại tài nguyên cho những thay đổi này, thì giờ đây, bạn phải chọn sử dụng một cách rõ ràng bằng thuộc tính tệp kê khai android:recreateOnConfigChanges mới. Thuộc tính này cho phép bạn chỉ định những thay đổi về cấu hình sẽ kích hoạt một vòng đời của activity hoàn chỉnh (từ dừng, đến hủy bỏ và tạo lại), cùng với các hằng số liên quan mcc, mnc và các hằng số mới keyboard, keyboardHidden, navigation, touchscreen và colorMode.
Chuẩn bị ứng dụng
Chúng tôi đã phát hành các công cụ và tài liệu để giúp bạn dễ dàng thực hiện việc này. Bài đăng chuyên sâu trên blog của chúng tôi có thêm hướng dẫn, cùng các chiến lược để giải quyết những vấn đề thường gặp. Các ứng dụng sẽ cần hỗ trợ bố cục ngang và dọc cho các kích thước cửa sổ trên toàn bộ dải tỷ lệ khung hình, vì việc hạn chế hướng hoặc tỷ lệ khung hình sẽ không còn là một lựa chọn. Bạn nên kiểm thử ứng dụng của mình bằng Android 17 Beta 1 với trình mô phỏng Pixel Tablet hoặc Pixel Fold (được định cấu hình thành targetSdkPreview = "CinnamonBun") hoặc bằng cách sử dụng khung tương thích của ứng dụng để bật UNIVERSAL_RESIZABLE_BY_DEFAULT trên các thiết bị Android 16.
Hiệu suất
MessageQueue không khoá
Trong Android 17, các ứng dụng nhắm đến SDK 37 trở lên sẽ nhận được một cách triển khai mới của android.os.MessageQueue, trong đó cách triển khai này không cần khoá. Việc triển khai mới này giúp cải thiện hiệu suất và giảm số khung hình bị bỏ lỡ, nhưng có thể làm hỏng những ứng dụng phản ánh các trường và phương thức riêng tư MessageQueue.
Thu gom rác theo thế hệ
Android 17 giới thiệu tính năng thu gom rác theo thế hệ cho trình thu thập Concurrent Mark-Compact của ART. Quy trình tối ưu hoá này giới thiệu các hoạt động thu thập thế hệ trẻ thường xuyên hơn, ít tốn tài nguyên hơn cùng với các hoạt động thu thập toàn bộ heap. nhằm mục đích giảm tổng chi phí CPU và thời lượng thu thập rác. Hơn một tỷ thiết bị chạy Android 12 (cấp độ API 31) trở lên cũng có thể sử dụng các điểm cải tiến của ART thông qua bản cập nhật hệ thống Google Play.
Các trường tĩnh cuối cùng hiện thực sự là cuối cùng
Kể từ Android 17, các ứng dụng nhắm đến Android 17 trở lên sẽ không thể sửa đổi các trường "static final", cho phép thời gian chạy áp dụng các phương pháp tối ưu hoá hiệu suất một cách tích cực hơn. Việc cố gắng thực hiện điều này thông qua phản chiếu (và phản chiếu sâu) sẽ luôn dẫn đến việc IllegalAccessException bị loại bỏ. Việc sửa đổi các trường này thông qua họ phương thức SetStatic<Type>Field của JNI sẽ khiến ứng dụng gặp sự cố ngay lập tức.
Các hạn chế đối với khung hiển thị thông báo tuỳ chỉnh
Để giảm mức sử dụng bộ nhớ, chúng tôi đang hạn chế kích thước của khung hiển thị thông báo tuỳ chỉnh. Bản cập nhật này khắc phục một lỗ hổng cho phép các ứng dụng bỏ qua các giới hạn hiện có bằng cách sử dụng URI. Hành vi này được kiểm soát theo phiên bản SDK mục tiêu và có hiệu lực đối với các ứng dụng nhắm đến API 37 trở lên.
Trình gỡ lỗi hiệu suất mới ProfilingManager kích hoạt
Chúng tôi đã giới thiệu một số trình kích hoạt hệ thống mới cho ProfilingManager để giúp bạn thu thập dữ liệu chuyên sâu nhằm gỡ lỗi các vấn đề về hiệu suất. Các điều kiện kích hoạt này là TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM, và TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE.
Để tìm hiểu cách thiết lập các điều kiện kích hoạt hệ thống mới, hãy xem tài liệu về lập hồ sơ dựa trên điều kiện kích hoạt và truy xuất và phân tích dữ liệu lập hồ sơ.
Nội dung nghe nhìn và camera
Android 17 mang đến các công cụ chuyên nghiệp cho ứng dụng camera và nội dung nghe nhìn, với các tính năng như chuyển đổi liền mạch và độ lớn tiêu chuẩn.
Bản cập nhật phiên camera động
Chúng tôi đã ra mắt updateOutputConfigurations() cho CameraCaptureSession. Điều này cho phép bạn đính kèm và tách các bề mặt đầu ra một cách linh hoạt mà không cần định cấu hình lại toàn bộ phiên chụp ảnh của camera. Thay đổi này cho phép chuyển đổi liền mạch giữa các trường hợp sử dụng và chế độ máy ảnh (chẳng hạn như chụp ảnh tĩnh so với quay video) mà không tốn bộ nhớ và mã phức tạp khi định cấu hình và giữ lại tất cả các bề mặt đầu ra của máy ảnh mà ứng dụng của bạn có thể cần trong quá trình khởi động máy ảnh. Điều này giúp loại bỏ các lỗi hoặc tình trạng treo máy mà người dùng có thể thấy trong quá trình hoạt động.
fun updateCameraSession(session: CameraCaptureSession, newOutputConfigs: List<OutputConfiguration>)) {
// Dynamically update the session without closing and reopening
try {
// Update the output configurations
session.updateOutputConfigurations(newOutputConfigs)
} catch (e: CameraAccessException) {
// Handle error
}
}
Siêu dữ liệu thiết bị nhiều camera logic
Khi làm việc với các camera logic kết hợp nhiều cảm biến camera thực, giờ đây, bạn có thể yêu cầu thêm siêu dữ liệu từ tất cả các camera thực đang hoạt động có liên quan đến một hoạt động chụp, chứ không chỉ camera chính. Trước đây, bạn phải triển khai các giải pháp thay thế, đôi khi phân bổ các luồng dữ liệu vật lý không cần thiết, để lấy siêu dữ liệu từ các camera phụ đang hoạt động (ví dụ: trong quá trình chuyển đổi ống kính để thu phóng khi camera theo dõi đang hoạt động). Tính năng này giới thiệu một khoá mới, LOGICAL_MULTI_CAMERA_ADDITIONAL_RESULTS, trong CaptureRequest và CaptureResult. Bằng cách đặt khoá này thành BẬT trong CaptureRequest, TotalCaptureResult sẽ bao gồm siêu dữ liệu từ các camera thực đang hoạt động khác. Bạn có thể truy cập vào siêu dữ liệu toàn diện này bằng cách sử dụng TotalCaptureResult.getPhysicalCameraTotalResults() để nhận thông tin chi tiết hơn, có thể giúp bạn tối ưu hoá việc sử dụng tài nguyên trong các ứng dụng camera.
Hỗ trợ chuẩn mã hoá video linh hoạt (VVC)
Android 17 bổ sung tính năng hỗ trợ tiêu chuẩn Versatile Video Coding (VVC). Trong đó có việc xác định loại MIME video/vvc trong MediaFormat, thêm các hồ sơ VVC mới trong MediaCodecInfo và tích hợp hỗ trợ vào MediaExtractor. Tính năng này sẽ có trên các thiết bị có hỗ trợ giải mã phần cứng và trình điều khiển có khả năng.
Chất lượng ổn định khi ghi hình
Chúng tôi đã thêm setVideoEncodingQuality() vào MediaRecorder. Điều này cho phép bạn định cấu hình chế độ chất lượng không đổi (CQ) cho bộ mã hoá video, giúp bạn kiểm soát chất lượng video một cách chi tiết hơn ngoài các chế độ cài đặt tốc độ bit đơn giản.
Tăng cường bảo mật cho âm thanh nền
Kể từ Android 17, khung âm thanh sẽ thực thi các hạn chế đối với hoạt động tương tác âm thanh ở chế độ nền, bao gồm cả việc phát âm thanh, yêu cầu quyền phát âm thanh và API thay đổi âm lượng để đảm bảo rằng người dùng chủ ý bắt đầu những thay đổi này.
Nếu ứng dụng cố gắng gọi các API âm thanh trong khi ứng dụng không ở trong một vòng đời hợp lệ, thì các API phát âm thanh và thay đổi âm lượng sẽ tự động không hoạt động mà không gửi ngoại lệ hoặc thông báo lỗi. API quyền phát âm thanh sẽ không hoạt động với mã kết quả AUDIOFOCUS_REQUEST_FAILED.
Quyền riêng tư và bảo mật
Ngừng sử dụng thuộc tính lưu lượng truy cập qua văn bản thô
Thuộc tính android:usesCleartextTraffic hiện không dùng nữa. Nếu ứng dụng của bạn nhắm đến (Android 17) trở lên và dựa vào usesCleartextTraffic="true" mà không có Cấu hình bảo mật mạng tương ứng, thì ứng dụng sẽ mặc định không cho phép lưu lượng truy cập không mã hoá. Bạn nên di chuyển sang các tệp Cấu hình bảo mật mạng để có quyền kiểm soát chi tiết.
Mật mã học kết hợp HPKE
Chúng tôi đang giới thiệu một Giao diện nhà cung cấp dịch vụ (SPI) công khai để triển khai mật mã học kết hợp HPKE, cho phép giao tiếp an toàn bằng cách kết hợp khoá công khai và mã hoá đối xứng (AEAD).
Kết nối và viễn thông
Nhật ký cuộc gọi VoIP nâng cao
Chúng tôi sắp ra mắt tính năng quản lý lựa chọn ưu tiên của người dùng đối với chế độ tích hợp nhật ký cuộc gọi VoIP của ứng dụng. Điều này bao gồm việc hỗ trợ URI hình đại diện của người gọi và người tham gia trong Trình quay số hệ thống, cho phép người dùng kiểm soát chi tiết quyền riêng tư của nhật ký cuộc gọi và làm phong phú thêm hình ảnh hiển thị của nhật ký cuộc gọi VoIP tích hợp.
Phạm vi và khoảng cách Wi-Fi
Tính năng Đo khoảng cách qua Wi-Fi đã được cải thiện bằng các chức năng Phát hiện khoảng cách mới, hỗ trợ đo khoảng cách liên tục và phát hiện ngang hàng an toàn. Các bản cập nhật cho tính năng đo khoảng cách Wi-Fi Aware bao gồm các API mới cho các thao tác ngang hàng và tính năng lưu vào bộ nhớ đệm PMKID để đo khoảng cách an toàn 11az.
Nâng cao năng suất và công cụ cho nhà phát triển
Thông tin cập nhật về các ứng dụng thiết bị đồng hành
Chúng tôi đã giới thiệu 2 hồ sơ mới cho CompanionDeviceManager để cải thiện khả năng phân biệt thiết bị và xử lý quyền:
- Thiết bị y tế: Hồ sơ này cho phép các ứng dụng di động của thiết bị y tế yêu cầu tất cả các quyền cần thiết chỉ bằng một lần nhấn, giúp đơn giản hoá quy trình thiết lập.
- Thiết bị theo dõi thể chất: Hồ sơ DEVICE_PROFILE_FITNESS_TRACKER cho phép các ứng dụng đồng hành cho biết rõ rằng chúng đang quản lý một thiết bị theo dõi thể chất. Điều này đảm bảo trải nghiệm chính xác cho người dùng bằng các biểu tượng riêng biệt trong khi vẫn sử dụng lại các quyền hiện có của vai trò xem.
Ngoài ra, CompanionDeviceManager hiện cung cấp một hộp thoại hợp nhất cho các yêu cầu về quyền đối với thiết bị ở gần và việc liên kết thiết bị. Bạn có thể tận dụng phương thức setExtraPermissions mới trong AssociationRequest.Builder để nhóm các lời nhắc cấp quyền cho thiết bị ở gần trong quy trình liên kết hiện có, giảm số lượng hộp thoại hiển thị cho người dùng.
Bắt đầu với Android 17
Bạn có thể đăng ký mọi thiết bị Pixel được hỗ trợ để nhận bản cập nhật này và các bản cập nhật Android Beta trong tương lai qua mạng không dây. Nếu không có thiết bị Pixel, bạn có thể sử dụng ảnh hệ thống 64 bit với Trình mô phỏng Android trong Android Studio.
Nếu đang tham gia chương trình Thử nghiệm Android, bạn sẽ được cung cấp bản cập nhật lên Beta 1 qua mạng không dây.
Nếu đang dùng Android 26Q1 Beta và muốn sử dụng bản phát hành ổn định cuối cùng của 26Q1 và thoát khỏi phiên bản Beta, bạn cần bỏ qua bản cập nhật qua mạng không dây lên 26Q2 Beta 1 và đợi bản phát hành 26Q1.
Chúng tôi rất mong nhận được ý kiến phản hồi của bạn, vì vậy, vui lòng báo cáo vấn đề và gửi yêu cầu về tính năng trên trang phản hồi. Chúng tôi nhận được ý kiến phản hồi của bạn càng sớm thì càng có thể đưa nhiều ý kiến đó vào bản phát hành chính thức.
Để có trải nghiệm phát triển tốt nhất với Android 17, bạn nên sử dụng bản xem trước mới nhất của Android Studio (Panda). Sau khi thiết lập, bạn nên làm một số việc sau:
- Biên dịch theo SDK mới, kiểm thử trong môi trường CI và báo cáo mọi vấn đề trong công cụ theo dõi của chúng tôi trên trang phản hồi.
- Kiểm thử khả năng tương thích của ứng dụng hiện tại, tìm hiểu xem ứng dụng của bạn có bị ảnh hưởng bởi các thay đổi trong Android 17 hay không, đồng thời cài đặt ứng dụng của bạn vào một thiết bị hoặc trình mô phỏng chạy Android 17 và kiểm thử kỹ lưỡng.
Chúng tôi sẽ thường xuyên cập nhật hình ảnh hệ thống beta/bản xem trước và SDK trong suốt vòng đời phát hành Android 17. Sau khi cài đặt một bản dựng beta, bạn sẽ tự động nhận được các bản cập nhật trong tương lai qua mạng không dây cho tất cả các bản dùng thử và bản beta sau này.
Để biết thông tin đầy đủ, hãy truy cập vào trang web dành cho nhà phát triển Android 17.
Tham gia cuộc trò chuyện
Khi chúng tôi tiến đến giai đoạn Tính ổn định của nền tảng và bản phát hành ổn định cuối cùng của Android 17 vào cuối năm nay, ý kiến phản hồi của bạn vẫn là tài sản quý giá nhất của chúng tôi. Dù bạn là người dùng sớm trên kênh Canary hay là nhà phát triển ứng dụng đang thử nghiệm trên Beta 1, hãy cân nhắc tham gia cộng đồng của chúng tôi và gửi ý kiến phản hồi. Chúng tôi luôn lắng nghe.
Tiếp tục đọc
-
Tin tức về sản phẩm
Google I/O 2026 có 17 thông báo quan trọng dành cho nhà phát triển Android, tập trung vào năng suất do tác nhân dẫn dắt, Compose First làm tiêu chuẩn giao diện người dùng và nội dung nghe nhìn hiệu suất cao cũng như hoạt động phát triển thích ứng cho hệ sinh thái ngày càng mở rộng.
Matthew McCullough • Đọc trong 8 phút
-
Tin tức về sản phẩm
Hôm nay, trong sự kiện The Android Show, chúng tôi đã thông báo rằng Android đang chuyển đổi từ một hệ điều hành sang một hệ thống thông minh, tạo ra nhiều cơ hội hơn để tương tác với các ứng dụng của bạn.
Matthew McCullough • Đọc trong 4 phút
-
Tin tức về sản phẩm
Hôm nay, chúng tôi sẽ nâng cao hoạt động phát triển Android bằng Gemma 4, mô hình nguồn mở tiên tiến mới nhất của chúng tôi, được thiết kế với khả năng suy luận phức tạp và gọi công cụ tự động.
Matthew McCullough • Đọc trong 2 phút
Nhận thông tin cập nhật
Nhận thông tin chi tiết mới nhất về hoạt động phát triển trên Android trong hộp thư đến của bạn mỗi tuần.