Ben android geliştirici dosyalarını araştırdım ve okudum ama içerik sağlayıcı hibe uri izni için herhangi bir tatmin edici cevap bulamadık. Herkes daha detaylı ve daha basit açıklayabilir. Sorularım: uri hangi hibe kullanıyor? Hibe izni arasındaki farklar doğru ve yanlış Doğru kullanılmalı mı? yanlış olduğunda? ve daha fazla ayrıntı takdir edilmektedir.İçerik sağlayıcı izni yok uri izni
cevap
uri hangi hibe kullanıyor?
"hibe Uri
izinleri" özelliği üçüncü şahıslar tarafından normalde erişilemez bir ContentProvider
sahip olmanızı sağlar, henüz seçici mesela (kısa bir süre için tek bir üçüncü taraf uygulamalar bireysel Uri
değerlere erişime izin, Sağlayıcının sunduğu PDF'yi görüntüleyebilecek kadar uzun). Doğru ve
android:grantUriPermissions="true"
sahte hibe uri izni arasındaki farkları nedir
Java kodu, o
ContentProvider
tarafından sunulan herhangiUri
içinFLAG_GRANT_READ_URI_PERMISSION
veFLAG_GRANT_WRITE_URI_PERMISSION
kullanabilirsiniz gösterir.
android:grantUriPermissions="false"
çocuk tarafından belirlenen yalnızcaUri
değerleri<grant-uri-permission>
elemanlarıFLAG_GRANT_READ_URI_PERMISSION
veFLAG_GRANT_WRITE_URI_PERMISSION
ile kullanılabilir olduğunu gösterir.
Uygulama önbellek dizininizde bulunan bazı dosyaları postalamanız gerektiğini varsayalım. Diğer uygulamaların uygulamanızın içeriğine erişebileceğini belirtmedikçe, başka hiçbir uygulama bu dosyaya erişemez. Bunun için içerik sağlayıcısı yaratırsınız ve söyleyin, tüm url form içeriğinde: //com.your.app/dosyasını 'uygulama yönlendirme dizinine' yönlendirirsiniz.
Bazı kod:
File f = ...; // Some local file.
Uri uri = Uri.parse("content://com.your.app/" + f.getName());
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_SUBJECT, "Subject");
intent.putExtra(Intent.EXTRA_TEXT, "Body");
intent.putExtra(Intent.EXTRA_STREAM, uri);
// You only can add flag FLAG_GRANT_READ_URI_PERMISSION if your app has
// android:grantUriPermissions="true" in manifest or see quote below.
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
startActivity(Intent.createChooser(intent, "Send Email"));
CommonsWare olarak şunları söyledi:
android: grantUriPermissions = "false" sadece Uri > elemanları can çocuk < hibe-uri-izni ile belirtilen değer verdiğini gösterir FLAG_GRANT_READ_URI_PERMISSION ve FLAG_GRANT_WRITE_URI_PERMISSION ile birlikte kullanılabilir.
aynı noktada hala duyuyorum ve kullandığımız gerekirken hibe uri kullanarak neden anlamıyorum. Eğer daha detaylı açıklamak ve junior geliştirici gibi söyleyebilir. – Android