Mengakses Fail pada Storan Luaran daripada Windows
Android menyediakan cara bersatu untuk mengakses fail pada storan luaran, menjadikannya kelihatan dalam kedua-dua apl dan peneroka fail sistem. Walau bagaimanapun, jika fail apl anda tidak muncul dalam Windows selepas menulisnya ke storan luaran, ini mungkin menunjukkan masalah dengan pelaksanaan anda.
Pelaksanaan Semasa
Anda telah melaksanakan menulis fail ke direktori Environment.DIRECTORY_DOCUMENTS, yang biasanya boleh dilihat dalam Windows. Walau bagaimanapun, isunya terletak pada pengindeksan MediaStore.
Pengindeksan MediaStore
MediaStore bertanggungjawab untuk mengindeks fail pada storan luaran dan membentangkannya dalam peneroka fail sistem dan apl galeri. Jika fail yang baru dibuat belum ditemui oleh MediaStore, ia tidak akan kelihatan.
Penyelesaian Cadangan
Untuk menjadikan fail apl anda kelihatan dalam Windows, anda perlu maklumkan MediaStore tentang mereka menggunakan MediaScannerConnection dan kaedah scanFile()nya. Fungsi ini mengarahkan MediaStore untuk mengindeks fail yang ditentukan dan mengemas kini rekodnya dengan sewajarnya.
Snippet Kod
Dalam Java:
public void scanFile(Context ctxt, File f, String mimeType) { MediaScannerConnection.scanFile(ctxt, new String[] {f.getAbsolutePath()}, new String[] {mimeType}, null); }
Dalam Kotlin:
fun scanFile(ctxt: Context, f: File, mimeType: String) { MediaScannerConnection.scanFile(ctxt, arrayOf(f.getAbsolutePath()), arrayOf(mimeType), null) }
Dengan memanggil scanFile() selepas menulis data anda ke cakera, anda akan mencetuskan MediaStore untuk mengindeks fail anda dan menjadikannya kelihatan dalam kedua-dua Windows dan peneroka fail pada peranti.
Atas ialah kandungan terperinci Mengapa Fail Apl Android Saya Tidak Dipaparkan dalam Windows File Explorer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!