Melacak file dan folder yang baru-baru ini digunakan
API penting
Lacak file yang sering diakses pengguna Anda dengan menambahkannya ke daftar aplikasi yang terakhir digunakan (MRU). Platform ini mengelola MRU untuk Anda dengan mengurutkan item berdasarkan kapan item terakhir diakses, dan dengan menghapus item terlama saat batas 25 item daftar tercapai. Semua aplikasi memiliki MRU sendiri.
MRU aplikasi Anda diwakili oleh kelas StorageItemMostRecentlyUsedList, yang Anda peroleh dari properti StorageApplicationPermissions statis.MostRecentlyUsedList. Item MRU disimpan sebagai objek IStorageItem, sehingga objek StorageFile (yang mewakili file) dan objek StorageFolder (yang mewakili folder) dapat ditambahkan ke MRU.
Catatan
Untuk sampel lengkap, lihat Sampel pemilih file dan sampel Akses file.
Prasyarat
Memahami pemrograman asinkron untuk aplikasi Platform Windows Universal (UWP)
Anda dapat mempelajari cara menulis aplikasi asinkron di C# atau Visual Basic, lihat Memanggil API asinkron di C# atau Visual Basic. Untuk mempelajari cara menulis aplikasi asinkron di C++, lihat Pemrograman asinkron di C++.
Izin akses ke lokasi
Lihat Izin akses file.
Membuka file dan folder dengan pemilih
File yang dipilih seringkali merupakan file yang sama dengan yang dikembalikan pengguna lagi dan lagi.
Menambahkan file yang dipilih ke MRU
File yang dipilih pengguna Anda sering kali merupakan file yang mereka kembalikan berulang kali. Jadi pertimbangkan untuk menambahkan file yang dipilih ke MRU aplikasi Anda segera setelah dipilih. Berikut caranya.
Windows.Storage.StorageFile file = await picker.PickSingleFileAsync(); var mru = Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList; string mruToken = mru.Add(file, "profile pic");
StorageItemMostRecentlyUsedList.Add kelebihan beban. Dalam contoh, kita menggunakan Add(IStorageItem, String) sehingga kita dapat mengaitkan metadata dengan file. Mengatur metadata memungkinkan Anda merekam tujuan item, misalnya "profil pic". Anda juga dapat menambahkan file ke MRU tanpa metadata dengan memanggil Add(IStorageItem). Saat Anda menambahkan item ke MRU, metode mengembalikan string yang mengidentifikasi secara unik, yang disebut token, yang digunakan untuk mengambil item.
Tip
Anda akan memerlukan token untuk mengambil item dari MRU, jadi pertahankan di suatu tempat. Untuk informasi selengkapnya tentang data aplikasi, lihat Mengelola data aplikasi.
Menggunakan token untuk mengambil item dari MRU
Gunakan metode pengambilan yang paling sesuai untuk item yang ingin Anda ambil.
- Ambil file sebagai StorageFile dengan menggunakan GetFileAsync.
- Ambil folder sebagai StorageFolder dengan menggunakan GetFolderAsync.
- Ambil IStorageItem generik, yang dapat mewakili file atau folder, dengan menggunakan GetItemAsync.
Berikut cara mendapatkan kembali file yang baru saja kami tambahkan.
StorageFile retrievedFile = await mru.GetFileAsync(mruToken);
Berikut cara melakukan iterasi semua entri untuk mendapatkan token lalu item.
foreach (Windows.Storage.AccessCache.AccessListEntry entry in mru.Entries)
{
string mruToken = entry.Token;
string mruMetadata = entry.Metadata;
Windows.Storage.IStorageItem item = await mru.GetItemAsync(mruToken);
// The type of item will tell you whether it's a file or a folder.
}
AccessListEntryView memungkinkan Anda melakukan iterasi entri di MRU. Entri ini adalah struktur AccessListEntry yang berisi token dan metadata untuk item.
Menghapus item dari MRU saat penuh
Ketika batas 25 item MRU tercapai dan Anda mencoba menambahkan item baru, item yang diakses paling lama yang lalu secara otomatis dihapus. Jadi, Anda tidak perlu menghapus item sebelum menambahkan item baru.
Daftar akses di masa mendatang
Selain MRU, aplikasi Anda juga memiliki daftar akses di masa mendatang. Dengan memilih file dan folder, pengguna Anda memberikan izin aplikasi Anda untuk mengakses item yang mungkin tidak dapat diakses sebaliknya. Jika Anda menambahkan item ini ke daftar akses mendatang, Anda akan mempertahankan izin tersebut saat aplikasi ingin mengakses item tersebut lagi nanti. Daftar akses mendatang aplikasi Anda diwakili oleh kelas StorageItemAccessList, yang Anda peroleh dari properti StorageApplicationPermissions.FutureAccessList statis.
Saat pengguna memilih item, pertimbangkan untuk menambahkannya ke daftar akses di masa mendatang serta MRU Anda.
- FutureAccessList dapat menampung hingga 1000 item. Ingat: ini dapat menyimpan folder serta file, jadi itu banyak folder.
- Platform ini tidak pernah menghapus item dari FutureAccessList untuk Anda. Saat mencapai batas 1000 item, Anda tidak dapat menambahkan item lain sampai Anda memberi ruang dengan metode Hapus.