从另一个UWP应用程序获取数据
我不想访问另一个UWP应用程序中存储的数据。我看到您可以使用以下代码将数据保存在UWP应用程序的从另一个UWP应用程序获取数据,uwp,windows-10-universal,Uwp,Windows 10 Universal,我不想访问另一个UWP应用程序中存储的数据。我看到您可以使用以下代码将数据保存在UWP应用程序的LocalState文件夹中: Windows.Storage.ApplicationDataContainer localSettings=Windows.Storage.ApplicationData.Current.localSettings; Windows.Storage.StorageFolder localFolder=Windows.Storage.ApplicationData.Cu
LocalState
文件夹中:
Windows.Storage.ApplicationDataContainer localSettings=Windows.Storage.ApplicationData.Current.localSettings;
Windows.Storage.StorageFolder localFolder=Windows.Storage.ApplicationData.Current.localFolder;
Windows.Globalization.DateTimeFormatting.DateTimeFormatter格式化程序=
新Windows.Globalization.DateTimeFormatting.DateTimeFormatter(“longtime”);
StorageFile sampleFile=await localFolder.CreateFileAsync(“example.txt”,
CreationCollisionOption.ReplaceExisting);
等待FileIO.WriteTextAsync(sampleFile,formatter.Format(DateTime.Now));
因此,通过这段代码,我在我的第一个UWP项目中创建了一个名为example.txt的文件
是否可以从第二个UWP项目访问example.txt?如果是,如何?UWP中的应用程序是沙盒,因此您无法如此轻松地访问它们的存储。共享数据有两个选项:
- 您可以使用任何具有适当功能的应用程序都可以访问的
- 您可以在用户选择的位置
- 您可以选择一个应用程序将有权访问的文件夹
- 或者,您可以注册接收特定内容李>
- UWP中的应用程序是沙盒,因此您无法如此轻松地访问它们的存储。共享数据有两个选项:
- 您可以使用任何具有适当功能的应用程序都可以访问的
- 您可以在用户选择的位置
- 您可以选择一个应用程序将有权访问的文件夹
- 或者,您可以注册接收特定内容李>
是的。这只有在两个应用程序都由同一发布者发布时才可能实现 此文件夹缓存称为
下面是一个例子,将详细解释这一点 您需要在appmanifest中添加扩展,然后才能在所有希望共享数据的应用中执行此操作PublisherCacheFolder
<Extensions> <Extension Category="windows.publisherCacheFolders"> <PublisherCacheFolders> <Folder Name="Downloads" /> </PublisherCacheFolders> </Extension> </Extensions>
有一个很好的视频解释了这一点。跳到第19分钟 下面是另一个的简单写和读方法
是。这只有在两个应用程序都由同一发布者发布时才可能实现 此文件夹缓存称为async void WritetoPublisherFolder(字符串文本) { StorageFolder SharedFolder=Windows.Storage.ApplicationData.Current.GetPublisherCacheFolder(“CommonFolder”); StorageFile newFile=wait SharedFolder.CreateFileAsync(“SharedFile.txt”,CreationCollisionOption.OpenIfExists); wait FileIO.WriteTextAsync(newFile,Text); } 异步任务ReadFromSharedFolder() { StorageFolder SharedFolder=Windows.Storage.ApplicationData.Current.GetPublisherCacheFolder(“CommonFolder”); StorageFile newFile=wait SharedFolder.GetFileAsync(“SharedFile.txt”); var text=await FileIO.ReadTextAsync(newFile); 返回文本; }
下面是一个例子,将详细解释这一点 您需要在appmanifest中添加扩展,然后才能在所有希望共享数据的应用中执行此操作PublisherCacheFolder
<Extensions> <Extension Category="windows.publisherCacheFolders"> <PublisherCacheFolders> <Folder Name="Downloads" /> </PublisherCacheFolders> </Extension> </Extensions>
有一个很好的视频解释了这一点。跳到第19分钟 下面是另一个的简单写和读方法
您还可以创建一个可以共享任何数据的AppService。基本上,提供商将托管该服务,需要数据的应用程序应该使用该服务async void WritetoPublisherFolder(字符串文本) { StorageFolder SharedFolder=Windows.Storage.ApplicationData.Current.GetPublisherCacheFolder(“CommonFolder”); StorageFile newFile=wait SharedFolder.CreateFileAsync(“SharedFile.txt”,CreationCollisionOption.OpenIfExists); wait FileIO.WriteTextAsync(newFile,Text); } 异步任务ReadFromSharedFolder() { StorageFolder SharedFolder=Windows.Storage.ApplicationData.Current.GetPublisherCacheFolder(“CommonFolder”); StorageFile newFile=wait SharedFolder.GetFileAsync(“SharedFile.txt”); var text=await FileIO.ReadTextAsync(newFile); 返回文本; }
更多信息:您还可以创建一个可以共享任何数据的AppService。基本上,提供商将托管该服务,需要数据的应用程序应该使用该服务
更多信息:非常感谢,这就是我要找的!非常感谢,这就是我要找的!