Freigeben über


Nachverfolgen kürzlich verwendeter Dateien und Ordner

Wichtige APIs

Verfolgen Sie Dateien, auf die Ihr Benutzer häufig zugreift, indem Sie sie der Liste der zuletzt verwendeten Dateien Ihrer App (MRU) hinzufügen. Die Plattform verwaltet die MRU für Sie, indem Sie Elemente basierend auf dem Zeitpunkt des letzten Zugriffs sortieren und das älteste Element entfernen, wenn der Grenzwert für 25 Elemente der Liste erreicht ist. Alle Apps verfügen über eigene MRU.

Die MRU-Klasse Ihrer App wird durch die StorageItemMostRecentlyUsedList-Klasse dargestellt, die Sie aus der statischen StorageApplicationPermissions.MostRecentlyUsedList-Eigenschaft abrufen. MRU-Elemente werden als IStorageItem-Objekte gespeichert, sodass sowohl StorageFile-Objekte (die Dateien darstellen) als auch StorageFolder-Objekte (die Ordner darstellen) der MRU hinzugefügt werden können.

Hinweis

 Vollständige Beispiele finden Sie im Beispiel für die Dateiauswahl und im Beispiel für den Dateizugriff.

Voraussetzungen

Hinzufügen einer ausgewählten Datei zur MRU

  • Die Dateien, die Der Benutzer auswählt, sind häufig Dateien, zu denen sie wiederholt zurückkehren. Erwägen Sie also, ausgewählte Dateien zur MRU-Datei Ihrer App hinzuzufügen, sobald sie ausgewählt werden. Gehen Sie dazu wie folgt vor:

    Windows.Storage.StorageFile file = await picker.PickSingleFileAsync();
    
    var mru = Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList;
    string mruToken = mru.Add(file, "profile pic");
    

    StorageItemMostRecentlyUsedList.Add ist überladen. Im Beispiel verwenden wir Add(IStorageItem, String), sodass Metadaten der Datei zugeordnet werden können. Durch das Festlegen von Metadaten können Sie den Zweck des Elements aufzeichnen, z. B. "Profilbild". Sie können die Datei auch ohne Metadaten zum MRU hinzufügen, indem Sie Add(IStorageItem) aufrufen. Wenn Sie dem MRU ein Element hinzufügen, gibt die Methode eine eindeutig identifizierende Zeichenfolge zurück, die als Token bezeichnet wird, das zum Abrufen des Elements verwendet wird.

Tipp

Sie benötigen das Token, um ein Element aus der MRU abzurufen, daher sollten Sie es an einem Ort speichern. Weitere Informationen zu App-Daten finden Sie unter Verwalten von Anwendungsdaten.

Verwenden eines Tokens zum Abrufen eines Elements aus der MRU

Verwenden Sie die Abrufmethode, die für das abzurufende Element am besten geeignet ist.

Hier erfahren Sie, wie Sie die soeben hinzugefügte Datei wiederherstellen.

StorageFile retrievedFile = await mru.GetFileAsync(mruToken);

Hier erfahren Sie, wie Sie alle Einträge durchgehen, um in dieser Reihenfolge zuerst Token und dann Elemente abzurufen.

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.
}

Mit AccessListEntryView können Sie Einträge in der MRU durchlaufen. Diese Einträge sind AccessListEntry-Strukturen , die das Token und metadaten für ein Element enthalten.

Entfernen von Elementen aus der MRU, wenn sie voll ist

Wenn das Limit von 25 Elementen des MRU erreicht ist und Sie versuchen, ein neues Element hinzuzufügen, wird das Element, auf das vor der längsten Zeit zugegriffen wurde, automatisch entfernt. Daher müssen Sie niemals ein Element entfernen, bevor Sie ein neues Element hinzufügen.

Liste für zukünftigen Zugriff

Neben einer MRU-Liste verfügt Ihre App auch über eine Liste für zukünftigen Zugriff. Durch die Auswahl von Dateien und Ordnern gewährt Der Benutzer Ihrer App die Berechtigung für den Zugriff auf Elemente, auf die andernfalls möglicherweise nicht zugegriffen werden kann. Wenn Sie diese Elemente zu Ihrer Liste für zukünftigen Zugriff hinzufügen, behalten Sie diese Berechtigung bei, wenn Ihre App später erneut auf diese Elemente zugreifen möchte. Die Liste für zukünftigen Zugriff Ihrer App wird durch die StorageItemAccessList-Klasse dargestellt, die Sie aus der statischen StorageApplicationPermissions.FutureAccessList-Eigenschaft abrufen.

Wenn ein Benutzer ein Element auswählt, sollten Sie es ihrer Liste für zukünftigen Zugriff sowie Ihrer MRU hinzufügen.

  • Die FutureAccessList kann bis zu 1000 Elemente enthalten. Denken Sie daran: Sie kann Ordner sowie Dateien enthalten, sodass viele Ordner vorhanden sind.
  • Die Plattform entfernt niemals Elemente aus der FutureAccessList für Sie. Wenn Sie das Limit von 1000 Elementen erreicht haben, können Sie erst dann eine weitere hinzufügen, wenn Sie Platz mit der Remove-Methode schaffen.