Fournisseur de contenu de subvention uri autorisation
J'ai cherché et lu développeur android fichiers, mais je n'ai pas trouvé de réponse satisfaisante pour un fournisseur de contenu de subvention uri autorisation. Quelqu'un peut-il expliquer plus détaillée et plus simple. Mes questions sont les suivantes:
Ce que la subvention uri utilise pour?
Quelle est la différence entre la subvention de l'uri de l'autorisation le vrai et le faux
Quand devrions-nous employer vrai? si la valeur est false?
et plus de détails sont appréciés.
InformationsquelleAutor Android | 2014-04-10
Vous devez vous connecter pour publier un commentaire.
La "subvention
Uri
autorisations" vous permet d'avoir unContentProvider
qui est normalement inaccessibles par des tiers, mais de manière sélective permettre l'accès à desUri
valeurs individuelles pour les applications tierces pour une courte période de temps (par exemple, assez longtemps pour voir le PDF que le fournisseur de dessert).android:grantUriPermissions="true"
indique que votre code Java peut utiliserFLAG_GRANT_READ_URI_PERMISSION
etFLAG_GRANT_WRITE_URI_PERMISSION
pour toutUri
desservies par cetteContentProvider
.android:grantUriPermissions="false"
indique que seule laUri
valeurs spécifiées par enfant<grant-uri-permission>
éléments peuvent être utilisés avecFLAG_GRANT_READ_URI_PERMISSION
etFLAG_GRANT_WRITE_URI_PERMISSION
.android:grantUriPermissions
est défini à false, le système Android va vérifier si manifeste a<grant-uri-permission>
balise spécifique des chemins d'accès qui devraient être autorisés à utiliser l'URI autorisations comme<grant-uri-permission android:pathPattern="/notes/" /> <!-- for granting URI-based permissions to specific sub-branches of the provider -->
Dire que vous devez envoyer un fichier qui est sur votre application répertoire de cache.
Pas d'autres applications peuvent accéder à ce fichier, sauf si vous indiquez que d'autres applications puissent accéder au contenu de votre application. Pour cela, vous créez le fournisseur de contenu, et de dire, tous les uri dans le contenu du formulaire://com.votre.application/fichier "redirect", à votre demande répertoire de cache.
Code:
Comme CommonsWare dit: