如何在默认照片应用程序中打开图像?
How can I open an image in the default photos app?
我有一个应用程序可以从设备的相机捕获图像并将它们作为 StorageFile
s 保存到我的应用程序漫游数据中的一个文件夹中。我一直在尝试制作一个可以打开图像并显示预览的页面,但是我在这样做时遇到了很多问题,所以我只想在默认的照片应用程序中打开图像。但是,我找不到任何方法来做到这一点。使用 await Launcher.LaunchUriAsync(new Uri(@"ms-appdata:///roaming/folder/img.jpg"));
询问我是否要在商店中搜索应用程序(搜索 "ms-appdata")。 Windows (Phone) 的本机照片应用程序是否有专用的 URI 方案?此外,我 使用此应用程序的目标是 Windows 10,因此 URI 方案(如果有)可能已更改。
Launcher.LaunchUriAsync
用于启动使用 URI 方案的应用程序,这不是您想要的。
相反,您需要启动基于文件的应用程序:
获取图像作为 StorageFile
var imageFile = await StorageFile.GetFileFromPathAsync(@"ms-appdata:///roaming/folder/img.jpg");
然后您告诉 OS 启动一个应用程序来处理该文件。然后由用户选择哪个应用程序来处理图像文件:
var success = await Windows.System.Launcher.LaunchFileAsync(imageFile);
您可以阅读有关 "launching" 个文件的更多信息 here。
我有一个应用程序可以从设备的相机捕获图像并将它们作为 StorageFile
s 保存到我的应用程序漫游数据中的一个文件夹中。我一直在尝试制作一个可以打开图像并显示预览的页面,但是我在这样做时遇到了很多问题,所以我只想在默认的照片应用程序中打开图像。但是,我找不到任何方法来做到这一点。使用 await Launcher.LaunchUriAsync(new Uri(@"ms-appdata:///roaming/folder/img.jpg"));
询问我是否要在商店中搜索应用程序(搜索 "ms-appdata")。 Windows (Phone) 的本机照片应用程序是否有专用的 URI 方案?此外,我 使用此应用程序的目标是 Windows 10,因此 URI 方案(如果有)可能已更改。
Launcher.LaunchUriAsync
用于启动使用 URI 方案的应用程序,这不是您想要的。
相反,您需要启动基于文件的应用程序:
获取图像作为 StorageFile
var imageFile = await StorageFile.GetFileFromPathAsync(@"ms-appdata:///roaming/folder/img.jpg");
然后您告诉 OS 启动一个应用程序来处理该文件。然后由用户选择哪个应用程序来处理图像文件:
var success = await Windows.System.Launcher.LaunchFileAsync(imageFile);
您可以阅读有关 "launching" 个文件的更多信息 here。