Tại Google I / O, Google đã phát hành phiên bản beta đầu tiên của Android P, đưa AI vào cốt lõi của hệ điều hành và tập trung vào những trải nghiệm thông minh và đơn giản. Họ đã nói về một số tính năng mới nhất của Android trong các ghi chú và đi sâu vào API của nhà phát triển trong các lần đột phá. Android P làm cho điện thoại thông minh thông minh hơn, giúp nó học hỏi và thích ứng với người dùng. Ứng dụng của bạn có thể tận dụng tính năng thông minh mới nhất trong máy để giúp bạn tiếp cận nhiều người dùng hơn và cung cấp các loại trải nghiệm mới.Ở bài viết này mình sẽ nói về một số tính năng đáng chú ý trên Android P
Pin luôn là ưu tiên số một từ người dùng điện thoại di động, bất kể thiết bị họ đang sử dụng là gì. Trong Android P, Google đã hợp tác với DeepMind về một tính năng mới gọi là Adaptive Battery, tối ưu hóa cách ứng dụng sử dụng pin.
Adaptive Battery sử dụng machine learning để ưu tiên truy cập vào tài nguyên hệ thống cho các ứng dụng mà người dùng quan tâm nhất. Bằng cách sử dụng App Standby Buckets. Hệ thống giới hạn quyền truy cập của các ứng dụng vào tài nguyên thiết bị như CPU hoặc pin, dựa trên các mẫu sử dụng của người dùng. Nghĩa là mỗi ứng dụng được đặt vào một trong năm nhóm ưu tiên (priority buckets). Hệ thống giới hạn tài nguyên thiết bị có sẵn cho từng ứng dụng dựa trên nhóm mà ứng dụng đang sử dụng.
Mặt khác, khi ứng dụng của bạn đã nhập vào nhóm Working Set thì có một vài hạn chế nhẹ được đưa ra. Trong trường hợp này, bất kỳ Công việc nào đang chạy đều có thể được hoãn lại tối đa 2 giờ và mọi cảnh báo đang được kích hoạt có thể được hoãn lại tối đa 6 phút. Tiếp theo, khi ứng dụng di chuyển vào nhóm Frequent, công việc đã đăng ký có thể bị hoãn lại tối đa 8 giờ và báo thức được hoãn lại tối đa 30 phút – đây là một bước nhảy vọt từ nhóm trước đó. Tại thời điểm này, các hạn chế cũng được nhập cho các tin nhắn FCM ưu tiên cao vì các ứng dụng thường xuyên sẽ chỉ có thể nhận được 10 trong số này một ngày. Cuối cùng, khi ứng dụng của chúng ta rơi vào nhóm Rare , công việc có thể được hoãn lại lên đến 24 giờ và báo động lên đến 2 giờ. Thông báo mức độ ưu tiên cao cũng giảm xuống giới hạn 5 ngày và hiện có giới hạn mạng được giới thiệu, có nghĩa là các hoạt động mạng có thể bị trì hoãn tối đa 24 giờ.
Nếu muốn kiểm tra xem ứng dụng của bạn đang ở trong nhóm nào, thì bạn có thể sử dụng hàm getAppStandbyBucket (). Trong khi ứng dụng của bạn nên được xây dựng theo cách làm cho nó tối ưu cho mọi tình huống, chức năng này có thể thuận tiện cho các tình huống mà thời gian là quan trọng. Ví dụ, có thể một cái gì đó được đăng lên một API là rất quan trọng trong một khoảng thời gian nào đó – nếu một ứng dụng nằm trong nhóm Hiếm thì có thể sẽ không có ý nghĩa để lên lịch một công việc vì nó có thể được hoãn lại tới 24 giờ.
Với ý nghĩ đó, điều quan trọng là bạn không nên thử và thay đổi hành vi của ứng dụng để di chuyển ứng dụng của bạn giữa các gói. Để bắt đầu, các nhà sản xuất thiết bị khác nhau có thể thay đổi cách nhóm ưu tiên hoạt động để bạn không bao giờ có thể dựa vào cách các yếu tố quyết định vị trí đặt ứng dụng. Thứ hai, bạn không nên ép buộc người dùng lấy lại sự tương tác chỉ để di chuyển qua các nhóm ưu tiên – ví dụ: cố gắng lấy lại tương tác thông qua các thông báo có mức độ ưu tiên cao trong nỗ lực khôi phục trạng thái nhóm sẽ là hành vi xấu. Nếu thông báo của bạn cung cấp giá trị, điều đó thật tuyệt vời – nhưng đừng lạm dụng hệ thống để di chuyển thông qua các cấp độ nhóm. Ngoài ra, bạn có thể đạt đến hạn mức ưu tiên cao của mình và không thể hiển thị thêm bất kỳ thông báo nào cho phần còn lại của ngày đó.
App Action là một cách mới để tăng khả năng hiển thị ứng dụng của bạn cho người dùng khi họ bắt đầu nhiệm vụ của mình. Họ đưa khả năng cốt lõi của ứng dụng lên trước người dùng dưới dạng đề xuất để xử lý công việc của họ, từ các điểm tiếp xúc chính trên hệ thống như Smart Text Selection, Google Play, Google Search và Assistant.
Hành động sử dụng máy học để hiển thị đúng ứng dụng cho người dùng dựa trên ngữ cảnh của họ hoặc tương tác gần đây. Bởi vì Tác vụ làm nổi bật ứng dụng của bạn ở đâu và khi nào phù hợp nhất, chúng là cách tuyệt vời để tiếp cận người dùng mới và tương tác lại với người dùng hiện tại.
Slices là một cách mới tuyệt vời để thu hút người dùng và chúng tôi muốn họ có sẵn càng rộng rãi càng tốt. Google đã thêm hỗ trợ nền tảng trong Android P và đã xây dựng các API và mẫu nhà phát triển vào Android Jetpack, bộ thư viện và công cụ mới của chúng tôi để xây dựng các ứng dụng tuyệt vời. Thông qua Jetpack, việc triển khai Slices của bạn có thể nhắm mục tiêu người dùng quay trở lại Kitkat – trên 95% thiết bị Android đang hoạt động. Google cũng sẽ có thể cập nhật các mẫu thường xuyên để hỗ trợ các trường hợp sử dụng và tương tác mới (chẳng hạn như nhập văn bản). Chi tiết bạn có thể xem tại: https://developer.android.com/guide/slices/getting-started#slice-viewer.
Ngoài ra trong Android P còn sử dụng ML Kit API để thêm tính năng trả lời thông minh trên notification và nâng cấp TextClassifier, thúc đẩy việc học máy để xác định một số thực thể trong văn bản được chọn và đề xuất các hành động. Ví dụ: TextClassifier có thể cho phép ứng dụng của bạn phát hiện rằng một số điện thoại đã được chọn và đề xuất rằng người dùng thực hiện cuộc gọi điện thoại. Các tính năng mới của TextClassifier thay thế chức năng của lớp Linkify.
Google đặt trọng tâm đặc biệt vào sự đơn giản trong Android P, phát triển giao diện người dùng của Android để hợp lý hóa và nâng cao nhiệm vụ của người dùng. Đối với developer, các thay đổi giúp cải thiện cách người dùng tìm, sử dụng và quản lý ứng dụng của bạn. Google giới thiệu một hệ thống điều hướng trong Android P cho phép người dùng truy cập dễ dàng hơn vào Home, Overview và Assistant từ một nút trên mỗi màn hình. Điều hướng mới đơn giản hóa đa nhiệm và làm cho việc khám phá các ứng dụng liên quan dễ dàng hơn nhiều. Trong phần overview, người dùng có cái nhìn lớn hơn về những gì họ đang làm khi họ rời khỏi từng ứng dụng, giúp việc xem và tiếp tục hoạt động trở nên dễ dàng hơn nhiều. Phần overview cũng cung cấp quyền truy cập vào tìm kiếm, ứng dụng được dự đoán và hành động ứng dụng và đưa người dùng đến tất cả ứng dụng bằng một lần vuốt khác.
Trong Android P, được bổ sung thêm một loại widget mới đó là Magnifier,nó được thiết kế để dễ dàng hơn trong việc chọn văn bản và thao tác con trỏ văn bản trong văn bản. Theo mặc định, các lớp mở rộng TextView sẽ tự động hỗ trợ Magnifier (phóng to), nhưng bạn có thể sử dụng API Magnifier để đính kèm nó vào bất kỳ Chế độ xem tùy chỉnh nào, mở ra nhiều mục đích sử dụng khác nhau.Ví dụ, khi ta muốn tạo một Magnifier, chúng ta chỉ cần gọi hàm tạo lớp truyền trong tham chiếu đến view mà chúng ta đang muốn cung cấp độ phóng đại:
Android P cung cấp hỗ trợ cho các màn hình cạnh mới nhất với màn hình bỏ đi cho máy ảnh và loa. Lớp DisplayCutout mới cho phép bạn tìm ra vị trí và hình dạng của các khu vực không hoạt động mà nội dung không được hiển thị. Để xác định sự tồn tại và vị trí của các vùng cắt bỏ này, hãy sử dụng phương thức getDisplayCutout ().
Thuộc tính bố cục cửa sổ mới, layoutInDisplayCutoutMode, cho phép ứng dụng của bạn bố trí nội dung của nó xung quanh các đoạn cắt của thiết bị. Bạn có thể đặt thuộc tính này thành một trong các giá trị sau:
Nguồn: Devmaster sưu tầm từ internet via Viblo