SharedStorageAccessManager Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ermöglicht es einer App, eine Datei für eine andere App freizugeben, indem ein Token über die URI-Aktivierung, app Service, REST-API usw. übergeben wird. Die Ziel-App löst das Token ein, um die Datei von der Quell-App freigegeben zu erhalten.
public ref class SharedStorageAccessManager abstract sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
class SharedStorageAccessManager final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public static class SharedStorageAccessManager
Public Class SharedStorageAccessManager
- Vererbung
- Attribute
Windows-Anforderungen
Gerätefamilie |
Windows 10 (eingeführt in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)
|
Beispiele
Im folgenden Beispiel startet eine Quell-App eine Zuordnungs-App und stellt eine GPX-Datei bereit, die Wegbeschreibungen enthält, die von der Ziel-App angezeigt werden sollen.
Zunächst ruft die Quell-App ein Token für die GPX-Datei ab und verwendet die Protokollaktivierung, um die Ziel-App zu starten.
public async void ShareMostRecentDirections()
{
// Get the most recently opened .gpx file
// from the recently used file list.
StorageItemMostRecentlyUsedList mostRecent =
StorageApplicationPermissions.MostRecentlyUsedList;
String mruToken = mostRecent.Entries.FirstOrDefault().Token;
StorageFile file = await mostRecent.GetFileAsync(mruToken);
// Get the token to share access to the updated .gpx file.
String sharingToken = SharedStorageAccessManager.AddFile(file);
//Launch the driving application .
Uri driveTo = new Uri("nokia-drive-to:?Gpxfile=" + sharingToken);
var launch = await Launcher.LaunchURIAsync(driveTo);
}
Als Nächstes ruft die Ziel-App die GPX-Datei ab, indem sie das von der Quell-App empfangene Token bereitstellt.
protected override async void OnActivated(IActivatedEventArgs args)
{
var protocolArgs = args as ProtocolActivatedEventArgs;
// Get the token from the URI.
var queryStrings = new WwwFormUrlDecoder(protocolArgs.Uri.Query);
string gpxFileToken = queryStrings.GetFirstValueByName("GpxFile");
// Get the .gpx file and call a custom method
// to display driving directions.
if (!string.IsNullOrEmpty(gpxFileToken))
{
PlotGpxFile(await
SharedStorageAccessManager.RedeemTokenForFileAsync(gpxFileToken));
}
}
Hinweise
Hier ist die Sequenz der Schritte, die es einer App ermöglichen, eine Datei für eine andere App freizugeben, indem ein Token beispielsweise im Rahmen einer URI-Aktivierung übergeben wird.
- Die Quell-App ruft die AddFile-Methode auf, um das Freigabetoken abzurufen, das sie an die Ziel-App übergibt, die sie mit einem URI startet.
- Die Ziel-App ruft die RedeemTokenForFileAsync-Methode auf, um die freigegebene Datei abzurufen.
- Optional kann die Quell-App die RemoveFile-Methode aufrufen, um ein Zuvor abgerufenes Token durch Aufrufen der AddFile-Methode zu widerrufen. Weitere Informationen zur URI-Aktivierung finden Sie unter Starten der Standard-App für einen URI.
Die Verwendung der SharedStorageAccessManager-Klasse und von Freigabetoken unterliegt den folgenden Anforderungen und Einschränkungen.
- Ein Freigabetoken kann nur einmal eingelöst werden. Danach ist das Token nicht mehr gültig.
- Ein Freigabetoken läuft nach 14 Tagen ab und ist nicht mehr gültig.
- Die Quell-App kann nicht mehr als 1000 Freigabetoken abrufen. Nachdem ein Token eingelöst, entfernt oder abläuft, zählt es nicht mehr auf das Kontingent der Quell-App.
Netzwerkdateien werden von dieser Klasse nicht unterstützt.
Methoden
AddFile(IStorageFile) |
Ruft das Freigabetoken ab, mit dem eine App die angegebene Datei für eine andere App freigeben kann. |
RedeemTokenForFileAsync(String) |
Ruft eine Datei ab, die von einer anderen App freigegeben wird, indem das von der Quell-App empfangene Freigabetoken bereitgestellt wird. |
RemoveFile(String) |
Widerruft ein vorhandenes Freigabetoken. |