Android 17 đã đạt đến bản beta 4, bản beta theo lịch trình cuối cùng của chu kỳ phát hành này, một cột mốc quan trọng đối với khả năng tương thích của ứng dụng và độ ổn định của nền tảng. Cho dù bạn đang tinh chỉnh trải nghiệm người dùng của ứng dụng, đảm bảo quá trình kết xuất tràn viền diễn ra suôn sẻ hay tận dụng các API mới nhất, thì Beta 4 đều cung cấp môi trường gần như hoàn chỉnh mà bạn cần để kiểm thử.
Chuẩn bị sẵn sàng các ứng dụng, thư viện, công cụ và công cụ phát triển trò chơi!
Nếu phát triển một SDK, thư viện, công cụ hoặc công cụ phát triển trò chơi Android, thì bạn cần chuẩn bị mọi bản cập nhật cần thiết ngay bây giờ để ngăn chặn các nhà phát triển ứng dụng và trò chơi hạ nguồn gặp phải vấn đề về khả năng tương thích, đồng thời cho phép họ nhắm đến các tính năng mới nhất của SDK. Vui lòng thông báo cho các nhà phát triển cấp dưới của bạn nếu cần cập nhật để hỗ trợ đầy đủ Android 17.
Thử nghiệm bao gồm việc cài đặt ứng dụng phát hành công khai hoặc ứng dụng thử nghiệm sử dụng thư viện hoặc công cụ của bạn thông qua Google Play hoặc các phương tiện khác trên thiết bị hoặc trình mô phỏng chạy Android 17 Beta 4. Thực hiện tất cả quy trình của ứng dụng và tìm các vấn đề về chức năng hoặc giao diện người dùng. Mỗi bản phát hành Android đều có những thay đổi về nền tảng giúp cải thiện quyền riêng tư, bảo mật và trải nghiệm người dùng nói chung; hãy xem xét những thay đổi về hành vi ảnh hưởng đến ứng dụng đối với các ứng dụng chạy trên và nhắm đến Android 17 để tập trung vào hoạt động kiểm thử, bao gồm cả những thay đổi sau:
- Khả năng đổi kích thước trên màn hình lớn: Sau khi nhắm đến Android 17, bạn sẽ không thể chọn không duy trì các ràng buộc về hướng, khả năng đổi kích thước và tỷ lệ khung hình trên màn hình lớn.
- Tải mã động: Nếu ứng dụng của bạn nhắm đến Android 17 trở lên, thì tính năng bảo vệ Tải mã động (DCL) an toàn hơn ra mắt trong Android 14 cho các tệp DEX và JAR hiện đã mở rộng sang các thư viện gốc. Tất cả các tệp gốc được tải bằng System.load() đều phải được đánh dấu là chỉ đọc. Nếu không, hệ thống sẽ gửi UnsatisfiedLinkError.
- Bật CT theo mặc định: Tính minh bạch của chứng chỉ (CT) được bật theo mặc định. (Trên Android 16, CT có sẵn nhưng các ứng dụng phải chọn sử dụng.)
- Bảo vệ mạng cục bộ: Theo mặc định, các ứng dụng nhắm đến Android 17 trở lên sẽ bị chặn quyền truy cập vào mạng cục bộ. Nếu có thể, hãy chuyển sang sử dụng các trình chọn bảo đảm quyền riêng tư và sử dụng quyền ACCESS_LOCAL_NETWORK mới để có quyền truy cập rộng rãi và liên tục.
- Tăng cường bảo mật âm thanh ở chế độ nền: Kể từ Android 17, khung âm thanh sẽ thực thi các quy tắ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 lấy tiêu điểm âm thanh và API thay đổi âm lượng. Dựa trên ý kiến phản hồi của bạn, chúng tôi đã thực hiện một số thay đổi kể từ bản thử nghiệm 2, bao gồm cả việc hạn chế targetSDK trong quá trình thực thi FGS khi đang sử dụng và miễn trừ âm thanh báo thức. Bạn có thể xem toàn bộ thông tin chi tiết trong hướng dẫn mới.
Giới hạn bộ nhớ ứng dụng
Android sẽ giới thiệu tính năng giới hạn bộ nhớ ứng dụng dựa trên tổng dung lượng RAM của thiết bị để tạo một môi trường ổn định và có thể xác định hơn cho các ứng dụng và người dùng Android. Trong Android 17, các hạn mức được đặt một cách thận trọng để thiết lập các đường cơ sở của hệ thống, nhắm đến tình trạng rò rỉ bộ nhớ nghiêm trọng và các trường hợp ngoại lệ khác trước khi chúng gây ra tình trạng bất ổn trên toàn hệ thống, dẫn đến hiện tượng giật giao diện người dùng, mức tiêu thụ pin cao hơn và ứng dụng bị tắt. Mặc dù chúng tôi dự đoán rằng thay đổi này sẽ có tác động tối thiểu đến phần lớn các phiên hoạt động của ứng dụng, nhưng bạn nên làm theo các phương pháp hay nhất về bộ nhớ, bao gồm cả việc thiết lập một đường cơ sở cho bộ nhớ.
Trong quá trình triển khai hiện tại, getDescription trong ApplicationExitInfo sẽ chứa chuỗi "MemoryLimiter" nếu ứng dụng của bạn bị ảnh hưởng. Bạn cũng có thể sử dụng hồ sơ dựa trên trình kích hoạt bằng TRIGGER_TYPE_ANOMALY để nhận các kết xuất heap được thu thập khi đạt đến hạn mức bộ nhớ.
Để giúp bạn tìm ra các rò rỉ bộ nhớ, Android Studio Panda bổ sung tính năng tích hợp LeakCanary ngay trong Trình phân tích tài nguyên Android Studio dưới dạng một tác vụ chuyên dụng, được đặt trong bối cảnh trong IDE và tích hợp đầy đủ với mã nguồn của bạn.
Dung lượng bộ nhớ nhỏ hơn giúp hiệu suất mượt mà hơn, thời lượng pin lâu hơn và trải nghiệm cao cấp trên tất cả các hệ số hình dạng. Hãy cùng nhau xây dựng một tương lai nhanh chóng và đáng tin cậy hơn cho hệ sinh thái Android!
Điều kiện kích hoạt lập hồ sơ cho các điểm bất thường của ứng dụng
Android giới thiệu một dịch vụ phát hiện điểm bất thường trên thiết bị để theo dõi các hành vi tiêu tốn nhiều tài nguyên và các vấn đề tương thích tiềm ẩn. Được tích hợp với ProfilingManager, dịch vụ này cho phép ứng dụng của bạn nhận được các cấu phần phần mềm lập hồ sơ do các sự kiện cụ thể mà hệ thống phát hiện kích hoạt.
Sử dụng trình kích hoạt TRIGGER_TYPE_ANOMALY để phát hiện các vấn đề về hiệu suất hệ thống, chẳng hạn như số lượng lệnh gọi liên kết quá mức và mức sử dụng bộ nhớ quá mức. Khi một ứng dụng vi phạm giới hạn bộ nhớ do hệ điều hành xác định, trình kích hoạt bất thường sẽ cho phép nhà phát triển nhận được các tệp kết xuất heap dành riêng cho ứng dụng để giúp xác định và khắc phục các vấn đề về bộ nhớ. Ngoài ra, đối với tình trạng liên kết rác quá mức, trình kích hoạt bất thường sẽ cung cấp một hồ sơ lấy mẫu ngăn xếp về các giao dịch liên kết.
Lệnh gọi lại API này diễn ra trước khi có bất kỳ quy trình thực thi nào do hệ thống áp đặt. Ví dụ: tính năng này có thể giúp nhà phát triển thu thập dữ liệu gỡ lỗi trước khi hệ thống chấm dứt ứng dụng do vượt quá giới hạn bộ nhớ. Để hiểu cách sử dụng trình kích hoạt, hãy xem tài liệu của chúng tôi về lập hồ sơ dựa trên trình kích hoạt.
val profilingManager = applicationContext.getSystemService(ProfilingManager::class.java) val triggers = ArrayList<ProfilingTrigger>() triggers.add(ProfilingTrigger.Builder( ProfilingTrigger.TRIGGER_TYPE_ANOMALY)) val mainExecutor: Executor = Executors.newSingleThreadExecutor() val resultCallback = Consumer<ProfilingResult> { profilingResult -> if (profilingResult.errorCode != ProfilingResult.ERROR_NONE) { // upload profile result to server for further analysis setupProfileUploadWorker(profilingResult.resultFilePath) } profilingManager.registerForAllProfilingResults(mainExecutor, resultCallback) profilingManager.addProfilingTriggers(triggers) }
Mật mã học hậu lượng tử (PQC) trong Kho khoá Android
Kho khoá Android thêm tính năng hỗ trợ cho ML-DSA (Giải thuật ký số dựa trên mạng tinh thể mô-đun) được chuẩn hoá theo NIST. Trên các thiết bị được hỗ trợ, bạn có thể tạo khoá ML-DSA và sử dụng các khoá này để tạo chữ ký an toàn lượng tử, hoàn toàn trong phần cứng bảo mật của thiết bị. Kho khoá Android cung cấp các biến thể thuật toán ML-DSA-65 và ML-DSA-87 thông qua các API Java Cryptographic Architecture tiêu chuẩn: KeyPairGenerator, KeyFactory và Signature. Để biết thêm thông tin chi tiết, hãy xem tài liệu dành cho nhà phát triển của chúng tôi.
KeyPairGenerator generator = KeyPairGenerator.getInstance( “ML-DSA-65”, "AndroidKeyStore"); generator.initialize( new KeyGenParameterSpec.Builder( “my-key-alias”, KeyProperties.PURPOSE_SIGN | KeyProperties.PURPOSE_VERIFY) .build()); KeyPair keyPair = generator.generateKeyPair();
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 Android Beta này và các bản cập nhật 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 4 qua mạng không dây.
Tiếp tục 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 ý kiến 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
Ý 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 phiên bản Beta 4, 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.
-
Tin tức về sản phẩmVào tháng 3, chúng tôi đã giới thiệu Android Bench – bảng xếp hạng LLM của chúng tôi cho các tác vụ phát triển Android trong thực tế. Kể từ đó, chúng tôi đã cải thiện điểm chuẩn dựa trên ý kiến phản hồi của bạn, bao gồm cả việc đánh giá các mô hình có trọng số mở và thêm các phương diện chi phí và hiệu quả vào bảng xếp hạng.
Zoe Lopez-Latorre • Đọc trong 3 phút -
Tin tức về sản phẩmTại Google Play, chúng tôi cam kết mang đến trải nghiệm tốt nhất có thể cho người dùng, đồng thời đảm bảo nhà phát triển có các công cụ và khả năng thích ứng để thành công.
Paul Feng • Đọc trong 3 phút -
Tin tức về sản phẩmNăm ngoái, chúng tôi đã triển khai quy trình xác minh nhà phát triển Android để tăng cường tính bảo mật của hệ sinh thái và ngăn chặn các đối tượng xấu ẩn danh để phát hành ứng dụng gây hại.
Matthew Forsythe • 2 phút đọc
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.