Android 10 veya sonraki bir sürümde çalışan bir uygulamanın Kapsamlı Depolama erişimi kullanması gerekip gerekmediğini, yani normal dosya erişimi olan "Eski Harici Depolama" devre dışı bırakıldığını söyleyen basit bir API çağrısı var mı? AndroidManifest.xml dosyasındaki uygulama bile bildirildi:
android:requestLegacyExternalStorage="true"
gelecekte Google politika değişiklikleri nedeniyle dosya erişimi hala reddedilebilir, bu nedenle bu değerin test edilmesi işe yaramaz. Bulduğum tek yol, harici depolama kökü dizininin okunabilir olup olmadığını sınamaktır, ancak bunun için uygulamanın önce eski depolama devre dışı bırakılmışsa başka bir şey için işe yaramayan Depolama izni istemesi gerekir.
public static boolean mustUseScopedStorage() {
// Impractical must first ask for useless Storage permission...
File exSD = Environment.getExternalStorageDirectory();
return !exSD.canRead(); // this test works only if Storage permission was granted.
}
Sanırım bir zamanlar bunu tespit etmek için yeni bir API gördüm, ancak artık bu makaleyi bulamıyorum ...
an app running on Android 10 or later must use Scoped Storage access
? Bununla ne demek istediğini açıklayabilir misin? Aklınızda hangi işlevler var? Örneğin N için getirilen Depolama Birimleri ve Depolama Yöneticisi'nin Q için zaten kullanımdan kaldırıldığını