Photo Picker adalah API opsional untuk aplikasi yang ingin mengakses galeri Anda di Android 13, tetapi menjadi agak wajib di Android 14.
Salah satu fitur unggulan Android 13 adalah Photo Picker, komponen sistem baru yang memungkinkan pengguna memilih foto dan video mana yang akan diberikan akses aplikasi. Aplikasi tidak perlu meminta izin apa pun untuk mendapatkan akses ke item yang dipilih pengguna melalui Pemilih Foto, menjadikannya cara yang menjaga privasi untuk berbagi foto dan video dengan aplikasi. Pemilih file sistem yang sudah ada sejak Android 4.4 menawarkan lebih banyak fungsi daripada Pemilih Foto, tetapi UI-nya memiliki tanggal sebagai perbandingan.
Pemilih Foto (dan pemilih file sistem sebelumnya) melindungi privasi Anda dengan memungkinkan Anda membatasi foto dan video yang dapat diakses aplikasi. Sayangnya, banyak aplikasi tidak mendukung Photo Picker, meskipun versi yang kompatibel mundur tersedia untuk Android 4.4+. Aplikasi harus secara khusus memanggil Pemilih Foto menggunakan maksud, tetapi banyak aplikasi memilih untuk tidak menggunakannya karena satu dan lain alasan. Untungnya, itu mungkin tidak masalah lagi
Android 14, yang menguji cara bagi pengguna untuk memilih aplikasi foto dan video mana yang dapat diakses melalui Photo Picker terlepas dari apakah aplikasi tersebut benar-benar menggunakan API atau tidak.Banyak aplikasi mengakses file media melalui API penyimpanan media. Sistem mengindeks file menurut jenisnya, yang disebut koleksi penyimpanan media, dan mengelola database yang dapat dikueri oleh aplikasi menggunakan API penyimpanan media. Aplikasi yang menggunakan API penyimpanan media tidak perlu meminta izin untuk membaca atau mengubah file yang dimilikinya, tetapi perlu diberikan izin oleh pengguna untuk mengakses file yang dimiliki oleh aplikasi lain.
Mulai Android 10, aplikasi yang menargetkan API level 29 atau lebih tinggi harus diberikan izin READ_EXTERNAL_STORAGE oleh pengguna sebelum mereka dapat menggunakan API penyimpanan media untuk mengakses file dimiliki oleh aplikasi lain. Di Android 13, izin READ_EXTERNAL_STORAGE dibagi menjadi tiga izin berbeda (READ_MEDIA_AUDIO, READ_MEDIA_VIDEO, dan READ_MEDIA_IMAGES) yang masing-masing memberi aplikasi penargetan API level 33 kemampuan untuk menggunakan API penyimpanan media untuk mengakses file audio, video, dan gambar masing-masing yang dimiliki oleh orang lain aplikasi.
Android 14 sekali lagi mengubah izin akses media dengan menggabungkan READ_MEDIA_VIDEO, READ_MEDIA_IMAGES, dan ACCESS_MEDIA_LOCATION menjadi izin baru bernama READ_MEDIA_VISUAL_USER_SELECTED. Izin ini memungkinkan aplikasi yang menargetkan API level 34 untuk “membaca file gambar dan video yang dipilih pengguna dari penyimpanan bersama,” menurut deskripsinya. Namun, Android 14 mungkin secara retroaktif menerapkan perilaku baru ini ke aplikasi yang sudah ada yang menargetkan API level 33 (mis. Android 13) dan minta READ_MEDIA_VIDEO atau READ_MEDIA_IMAGES.
Saat aplikasi yang menargetkan API level 33 memicu dialog izin waktu proses untuk meminta pengguna memberikan READ_MEDIA_VIDEO atau READ_MEDIA_IMAGES (atau keduanya), Android 14 dapat memasukkan entri baru di dialog izin yang mengatakan "Pilih Foto." Mengetuk entri ini akan meluncurkan versi baru dari Pemilih Foto yang memungkinkan pengguna untuk memilih foto atau video mana yang mereka inginkan untuk memberikan akses aplikasi ke. Aplikasi selanjutnya hanya memiliki akses ke item media yang dipilih secara khusus oleh pengguna, kecuali jika pengguna menginginkannya perluas akses ke item media tambahan atau berikan akses aplikasi ke seluruh koleksi penyimpanan media untuk gambar dan video.
Entri dalam dialog izin ini tidak ditampilkan secara default di Android 14 DP1, karena visibilitasnya dibatasi oleh flag developer yang harus saya alihkan. Namun, jika fitur ini dirilis, itu akan menjadi kemenangan besar untuk privasi, karena itu berarti pengguna akan selalu memiliki kemampuan untuk memutuskan foto atau video mana yang harus diakses oleh aplikasi.
Terlalu sedikit aplikasi yang menggunakan Photo Picker API, mendorong Google untuk bereksperimen mencegat niat yang ada yang digunakan aplikasi untuk meluncurkan pemilih file sistem sehingga malah meluncurkan Pemilih Foto. Sementara Photo Picker memiliki beberapa kekurangan, seperti belum menampilkan file dari penyedia media cloud (mungkin akan segera hadir ekstensi SDK versi 5!) dan hanya menampilkan album tertentu di perangkat, ini lebih baik daripada pemilih file sistem lama dan tentunya lebih disukai untuk setiap aplikasi yang memiliki akses ke setiap foto dan video di galeri.
Pengembang yang tertarik untuk menerapkan API Pemilih Foto harus memutakhirkan ke versi terbaru pustaka Aktivitas Jetpack, yang menangani pemanggilan versi kompatibel mundur yang disediakan melalui Layanan Google Play di Android 4.4-Android 10 atau versi yang disediakan kerangka kerja yang disediakan melalui modul MediaProvider Mainline.