sintaxe:
<grant-uri-permission android:path="string"
                      android:pathPattern="string"
                      android:pathPrefix="string" />
contido em:
<provider>
descrição:
Especifica os subconjuntos de dados do app para os quais o provedor de conteúdo pai tem permissão de acesso. Subconjuntos de dados são indicados pela parte do caminho de um URI de content:. A parte de autoridade do URI identifica o provedor de conteúdo. A concessão de permissão é uma forma de autorizar os clientes do provedor que normalmente não têm permissão para acessar os dados dele ignorarem essa restrição uma única vez.

Se o atributo grantUriPermissions de um provedor de conteúdo for "true", a permissão pode ser concedida para qualquer dado do provedor. No entanto, se esse atributo for "false", a permissão só pode ser concedida a subconjuntos de dados especificados por esse elemento. Um provedor pode ter quantos elementos <grant-uri-permission> quiser. Cada um pode especificar apenas um caminho, ou seja, apenas um dos três atributos possíveis.

Para mais informações sobre como a permissão é concedida, consulte o atributo grantUriPermissions do elemento <intent-filter>.

atributos:
android:path
android:pathPrefix
android:pathPattern
Um caminho que identifica os subconjuntos de dados para os quais a permissão pode ser concedida. O atributo path especifica um caminho completo. A permissão pode ser concedida apenas ao subconjunto de dados específico identificado por esse caminho. O atributo pathPrefix especifica a parte inicial de um caminho. A permissão pode ser concedida a todos os subconjuntos de dados com caminhos que tenham essa parte inicial. O atributo pathPattern especifica um caminho completo, mas que pode conter os caracteres curinga abaixo:
  • Um asterisco ("*") corresponde a uma sequência de 0 a muitas ocorrências do caractere imediatamente anterior.
  • Um ponto seguido por um asterisco (".*") corresponde a uma sequência de 0 a muitos caracteres.

Como "\" é usado como um caractere de escape quando a string é lida no XML, antes de ser analisada como padrão, você vai precisar de um escape duplo. Por exemplo, um literal "*" seria escrito como "\\*", e um "\" como "\\\\". Isso é basicamente igual ao que você precisaria escrever ao construir a string em código Java.

Para mais informações sobre esses tipos de padrões, consulte as descrições de PATTERN_LITERAL, PATTERN_PREFIX e PATTERN_SIMPLE_GLOB na classe PatternMatcher.

introduzido em:
Nível 1 da API
veja também:
o atributo grantUriPermissions do elemento <provider>