Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Để tăng cường bảo vệ quyền riêng tư của người dùng, Android 11 bổ sung quyền truy cập thông tin vị trí một lần và thay đổi cách người dùng cấp quyền truy cập thông tin vị trí ở chế độ nền. Những bản cập nhật này ảnh hưởng đến tất cả các ứng dụng chạy trên Android 11 trở lên.
Quyền truy cập một lần
Hình 1. Hộp thoại hệ thống cho quyền truy cập thông tin vị trí ở nền trước có một lựa chọn tên là Chỉ lần này.
Trên Android 11 trở lên, bất cứ khi nào ứng dụng của bạn yêu cầu quyền truy cập vào vị trí ở nền trước, hộp thoại cấp quyền của hệ thống sẽ có một lựa chọn có tên là Chỉ lần này, như minh hoạ trong hình 1. Lựa chọn này giúp người dùng có thêm quyền kiểm soát đối với thời điểm ứng dụng có thể truy cập vào thông tin vị trí.
Android 11 thay đổi cách một tính năng trong ứng dụng của bạn có thể truy cập vào thông tin vị trí ở chế độ nền. Phần này mô tả từng thay đổi trong số này.
Nếu một tính năng trong ứng dụng của bạn truy cập thông tin vị trí khi ở chế độ nền, hãy xác minh rằng quyền truy cập này là cần thiết. Đồng thời, cân nhắc lấy thông tin mà tính năng này cần theo những cách khác, như mô tả trên trang về cách truy cập thông tin vị trí ở chế độ nền.
Yêu cầu quyền truy cập thông tin vị trí ở chế độ nền riêng biệt
Như mô tả trong hướng dẫn về cách yêu cầu quyền truy cập thông tin vị trí trong thời gian chạy, bạn nên thực hiện các yêu cầu gia tăng về thông tin vị trí. Nếu ứng dụng của bạn nhắm đến Android 11 trở lên, thì hệ thống sẽ thực thi phương pháp hay nhất này. Nếu bạn yêu cầu quyền truy cập thông tin vị trí ở chế độ nền trước và quyền truy cập thông tin vị trí ở chế độ nền cùng lúc, thì hệ thống sẽ bỏ qua yêu cầu này và không cấp quyền nào cho ứng dụng của bạn.
Thay đổi về hộp thoại quyền
Thông tin chi tiết về nội dung thay đổi
Đổi tên: BACKGROUND_RATIONALE_CHANGE_ID
Mã thay đổi: 147316723
Cách bật/tắt
Khi kiểm thử khả năng tương thích của ứng dụng với Android 11, bạn có thể bật hoặc tắt thay đổi này bằng các lệnh ADB sau:
adb shell am compat enable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAMEadb shell am compat disable (147316723|BACKGROUND_RATIONALE_CHANGE_ID) PACKAGE_NAME
Khi một tính năng trong ứng dụng của bạn yêu cầu quyền truy cập thông tin vị trí ở chế độ nền trên một thiết bị chạy Android 11 trở lên, hộp thoại hệ thống sẽ không có nút để bật quyền truy cập thông tin vị trí ở chế độ nền. Để bật quyền truy cập thông tin vị trí ở chế độ nền, người dùng phải đặt lựa chọn Luôn cho phép cho quyền truy cập thông tin vị trí của ứng dụng trên trang cài đặt, như mô tả trong hướng dẫn về cách Yêu cầu quyền truy cập thông tin vị trí ở chế độ nền.
Tài nguyên khác
Để biết thêm thông tin về cách truy cập thông tin vị trí ở chế độ nền, hãy xem các tài liệu sau:
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2025-08-27 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-08-27 UTC."],[],[],null,["To further protect user privacy, Android 11 adds one-time\nlocation access and changes how users grant background location access. These\nupdates affect all apps that run on Android 11 and higher.\n\nOne-time access \n**Figure 1.** System dialog for the foreground location permission includes an option called **Only this time**.\n\nOn Android 11 and higher, whenever your app requests access to\n[foreground location](/training/location/permissions#foreground), the system\npermissions dialog includes an option called **Only this time**, as shown in\nfigure 1. This option give users more control over when an app can access\nlocation information.\n\nLearn more about how the system handles [one-time\npermissions](/guide/topics/permissions/overview#one-time).\n\nBackground location access\n\nAndroid 11 changes how a feature in your app can gain access to\n[background location](/training/location/permissions#background). This section\ndescribes each of these changes.\n\nIf a feature in your app accesses location from the background, verify that such\naccess is necessary. Consider getting the information that the feature needs in\nother ways, as described on the page about how to [access\nlocation in the background](/training/location/background).\n\nRequest background location separately\n\nAs described in the guide on how to [request location access at\nruntime](/training/location/permissions#request-location-access-runtime), you\nshould perform incremental location requests. If your app targets\nAndroid 11 or higher, the system enforces this best practice. If\nyou request a foreground location permission and the background location\npermission at the same time, the system ignores the request and doesn't grant\nyour app either permission.\n\nPermission dialog changes \n\nChange details\n\n**Change Name** : `BACKGROUND_RATIONALE_CHANGE_ID`\n\n**Change ID** : `147316723`\n\nHow to toggle\n\nAs you test your app's compatibility with Android 11, you can toggle this change on or off\nusing the following ADB commands: \n\n adb shell am compat enable (\u003cvar translate=\"no\"\u003e147316723\u003c/var\u003e|\u003cvar translate=\"no\"\u003eBACKGROUND_RATIONALE_CHANGE_ID\u003c/var\u003e) \u003cvar translate=\"no\"\u003ePACKAGE_NAME\u003c/var\u003e\n adb shell am compat disable (\u003cvar translate=\"no\"\u003e147316723\u003c/var\u003e|\u003cvar translate=\"no\"\u003eBACKGROUND_RATIONALE_CHANGE_ID\u003c/var\u003e) \u003cvar translate=\"no\"\u003ePACKAGE_NAME\u003c/var\u003e\n\nFor more information about the compatibility framework and toggling changes, see\n[Test and debug platform behavior changes in\nyour app](/guide/app-compatibility/test-debug).\n\nWhen a feature in your app requests background location on a device that runs\nAndroid 11 or higher, the system dialog doesn't include a button\nto enable background location access. In order to enable background location\naccess, users must set the **Allow all the time** option for your app's location\npermission on a settings page, as described in the guide on how to [Request\nbackground location](/training/location/permissions#request-background-location).\n\nAdditional resources\n\nFor more information about accessing background location, view the following\nmaterials:\n\nVideos\n\n- [How to find possible background location\n usage](https://www.youtube.com/watch?v=xTVeFJZQ28c)"]]