我是 Xamarin 的新手, 我正在使用 VS studio 2022,我的应用程序在模拟器中拍照,然后我需要复制图像,我的问题是:图像存储在模拟器中的什么位置?生产上会有所不同吗? 这是我的 C# 代码: string origenPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);获取图像的路径,我不知道它是否正确。
谢谢。
我们看不到你拍照的代码,但一般来说,我们推荐使用Xamarin.Essentials: Media Picker来实现。
MediaPicker 类具有以下方法,它们都返回一个
FileResult
,可用于获取文件位置或将其作为流读取。
拍照和获取照片路径可参考以下代码:
async Task TakePhotoAsync()
{
try
{
var photo = await MediaPicker.CapturePhotoAsync();
await LoadPhotoAsync(photo);
Console.WriteLine($"CapturePhotoAsync COMPLETED: {PhotoPath}");
}
catch (FeatureNotSupportedException fnsEx)
{
// Feature is not supported on the device
}
catch (PermissionException pEx)
{
// Permissions not granted
}
catch (Exception ex)
{
Console.WriteLine($"CapturePhotoAsync THREW: {ex.Message}");
}
}
您还可以在此处按照教程进行操作:Xamarin Forms 中的媒体选择器 - Xamarin Forms 教程.
此外,您还可以使用MediaPlugin来实现。