Stay organized with collections Save and categorize content based on your preferences.
cú pháp:
<grant-uri-permission android:path="string"
                      android:pathPattern="string"
                      android:pathPrefix="string" />
có trong:
<provider>
mô tả:
Chỉ định các tập hợp con chứa dữ liệu ứng dụng mà nhà cung cấp nội dung gốc có quyền truy cập. Các tập hợp con dữ liệu được biểu thị bằng phần đường dẫn của URI content:. (Phần có uỷ quyền của URI giúp xác định nhà cung cấp nội dung.) Cấp quyền là một cách cho phép khách hàng của nhà cung cấp vượt qua quy định hạn chế một lần nếu bình thường họ không có quyền đó.

Nếu thuộc tính grantUriPermissions của nhà cung cấp nội dung là "true", bạn có thể cấp quyền cho bất kỳ dữ liệu nào theo mục đích sử dụng của nhà cung cấp nội dung. Tuy nhiên, nếu thuộc tính đó là "false" thì bạn chỉ có thể cấp quyền cho các tập hợp con dữ liệu do phần tử này chỉ định. Nhà cung cấp có thể chứa số phần tử <grant-uri-permission> bất kỳ. Mỗi phần tử này chỉ được chỉ định một đường dẫn (chỉ một trong ba thuộc tính có thể có).

Để biết thông tin về cách cấp quyền, hãy xem thuộc tính của grantUriPermissions của phần tử <intent-filter>.

thuộc tính:
android:path
android:pathPrefix
android:pathPattern
Một đường dẫn xác định một hoặc nhiều tập hợp con dữ liệu có thể cấp quyền. Thuộc tính path chỉ định một đường dẫn đầy đủ; chỉ có thể cấp quyền cho một tập hợp con dữ liệu cụ thể được xác định bằng đường dẫn đó. Thuộc tính pathPrefix chỉ định phần đầu của đường dẫn; có thể cấp quyền cho tất cả tập hợp con dữ liệu có phần đầu của đường dẫn giống như vậy. Thuộc tính pathPattern chỉ định một đường dẫn đầy đủ nhưng có thể chứa các ký tự đại diện sau:
  • Dấu hoa thị ("*") khớp với một chuỗi từ 0 đến nhiều lần xuất hiện của ký tự liền trước.
  • Dấu chấm, theo sau là dấu hoa thị (".*"), khớp với mọi chuỗi từ 0 đến nhiều ký tự.

Vì "\" được dùng làm ký tự thoát khi chuỗi được đọc từ XML (trước khi được phân tích cú pháp dưới dạng mẫu), nên bạn cần phải thoát hai lần: Ví dụ: ''*" sẽ được viết là "\\*" và "\" cố định sẽ được viết là "\\\\". Về cơ bản, việc này tương tự như những gì bạn cần viết nếu xây dựng chuỗi trong mã Java.

Để biết thêm thông tin về các loại mẫu này, hãy xem phần mô tả về PATTERN_LITERAL, PATTERN_PREFIXPATTERN_SIMPLE_GLOB trong lớp PatternMatcher.

ra mắt từ:
API cấp 1
xem thêm:
thuộc tính grantUriPermissions của phần tử <provider>