Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.

Quyền vị trí Tristate

Quyền vị trí Tristate trong Android 10 cho phép người dùng kiểm soát nhiều hơn cách ứng dụng truy cập vào vị trí thiết bị của họ.

Trong Android 9 trở xuống, người dùng đã có những lựa chọn liên tục khi cấp quyền truy cập vị trí cho các ứng dụng. Họ có thể Từ chối hoặc Cho phép , tùy chọn này cấp cho ứng dụng quyền truy cập mọi lúc (nền trước và nền sau). Quyền truy cập vị trí Tristate trong Android 10 cung cấp cho người dùng ba tùy chọn để cho phép ứng dụng truy cập vào vị trí của thiết bị. Người dùng được nhắc cấp hoặc từ chối cấp độ quyền khi ứng dụng yêu cầu.

Người dùng thường thấy ba lựa chọn được trình bày trong Hình 1. Tuy nhiên, có những trường hợp sử dụng chỉ yêu cầu hai trong số những tùy chọn này và trong những trường hợp như vậy, chỉ hai lựa chọn đó được hiển thị.

Tristate location permissions screen
Hình 1. Màn hình thông báo Tristate

Đây là ba tùy chọn:

  • Cho phép mọi lúc : vị trí của thiết bị được ứng dụng biết ngay cả khi ứng dụng không được sử dụng (đang chạy trong nền). Điều này tương đương với việc cho phép quyền trong Android 9 trở xuống.
  • Chỉ cho phép khi ứng dụng đang được sử dụng : (chỉ ở nền trước) vị trí của thiết bị chỉ hiển thị với ứng dụng khi nó đang hoạt động.
  • Từ chối : vị trí của thiết bị không bao giờ hiển thị với ứng dụng. Điều này cũng giống như việc từ chối quyền trong Android 9 trở xuống.

Người dùng được nhắc cấp quyền truy cập vị trí khi ứng dụng yêu cầu quyền.

Sau khi người dùng chỉ cấp quyền Cho phép trong khi ứng dụng đang sử dụng quyền truy cập, ứng dụng có thể yêu cầu tăng quyền truy cập vào Cho phép mọi lúc . Người dùng sẽ thấy một hộp thoại yêu cầu (trong Hình 2 ). Nếu người dùng chọn Giữ quyền truy cập khi đang sử dụng , khi ứng dụng truy cập vào vị trí thiết bị trong lần sử dụng tiếp theo, hộp thoại sẽ cung cấp tùy chọn Giữ và không hỏi lại .

Hộp thoại xuất hiện trong các điều kiện sau cho các ứng dụng nhắm mục tiêu Android 10:

  • Sau ít nhất 24 giờ kể từ khi cấp phép.
  • Chỉ khi ứng dụng đang nhận các vị trí trong nền.
  • Khi màn hình bật và người dùng không sử dụng ứng dụng khác.
Incremental permissions
Hình 2. Quyền tăng dần

Để tìm hiểu thêm về cách yêu cầu quyền, hãy xem Ứng dụng truy cập vào vị trí thiết bị . Để biết chi tiết nếu ứng dụng của bạn nhắm mục tiêu Android 9 trở xuống, hãy xem Tiếp tục hành động do người dùng thực hiện .

Sự va chạm

Tính năng cấp quyền vị trí của bộ ba ảnh hưởng đến bất kỳ ứng dụng nào cần quyền truy cập vị trí thiết bị khi đang chạy ở chế độ nền và bắt buộc phải có trong Android 10.

Bạn có thể thay đổi mã của mình nhưng bạn không được thay đổi hoặc tùy chỉnh hành vi liên quan đến quyền trong khuôn khổ.

Thực hiện

Quyền vị trí Tristate được áp dụng cho các ứng dụng trong Android 10 bất kể SDK mục tiêu của ứng dụng là gì.

Để biết thông tin về cách triển khai các trường hợp sử dụng của ứng dụng (khi nâng cấp), hãy tham khảo phần Thiết kế cho các tình huống nâng cấp thiết bị trong tài liệu dành cho nhà phát triển.

Để xem cách bật quyền truy cập cho các trường hợp sử dụng khác nhau (chẳng hạn như yêu cầu quyền truy cập vị trí nền cho các ứng dụng như Google Maps hoặc dịch vụ Google Play), hãy xem các chủ đề này trên trang Quyền truy cập ứng dụng vào vị trí thiết bị :

Quyền truy cập vị trí trong ứng dụng

Người dùng có thể thay đổi quyền truy cập ứng dụng của bạn thành Từ chối hoặc Chỉ cho phép trong khi sử dụng ứng dụng nếu họ chọn. Đối với quyền truy cập vị trí trong ứng dụng và đối với tất cả các ứng dụng của bên thứ nhất và bên thứ ba, hãy cung cấp các mức kiểm soát của người dùng được đưa ra trong bảng sau.

Ứng dụng loại quyền cần yêu cầu Các tùy chọn người dùng cung cấp
Ứng dụng chỉ yêu cầu quyền ở nền trước Chỉ cho phép khi sử dụng ứng dụng
Phủ nhận
Ứng dụng luôn yêu cầu quyền (nền trước và nền sau) Cho phép mọi lúc
Chỉ cho phép khi sử dụng ứng dụng
Phủ nhận
Tất cả các ứng dụng có yêu cầu quyền truy cập thông tin vị trí Chỉ cho phép khi sử dụng ứng dụng

Các quyền này áp dụng cho tất cả các yêu cầu vị trí. Các ứng dụng chỉ Cho phép khi đang sử dụng quyền ứng dụng không được phép quét Wi-Fi nền, di động hoặc Bluetooth.

Nâng cấp hệ điều hành

Trên bản nâng cấp hệ điều hành lên Android 10, quyền vị trí ứng dụng dịch theo như sau:

  • Bật trở thành Chỉ cho phép khi đang Sử dụng .
  • Tắt vẫn tắt ( Từ chối ).
  • Quyền truy cập vị trí được cấp trước trở thành cấp trước chỉ Cho phép khi đang sử dụng .