从过去的几个小时开始,我试图做一个按钮,单击按钮,相机将打开。我仅对UWP进行了测试,但无法正常工作。
我尝试在UWP中使用x64和x86(以确保它不是与平台相关的问题)。
private async void Button_Clicked(object sender, EventArgs e)
{
await CrossMedia.Current.Initialize();
if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.IsTakePhotoSupported)
{
DisplayAlert("No Camera", ":( No camera available.", "OK");
return;
}
var file = await CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions
{
Directory = "Sample",
Name = "test.jpg"
});
}
该项目是2017年的.net标准,Visual Studio已在xamarin 3.0中创建了该项目,我也在2.4中对其进行了测试,未显示任何内容。
在头几次,我的断点碰到了我的xamarin.forms项目,但突然他们停了下来,也许这是异步的。目前,当我调试并放置断点时,它会导航到app.xaml.cs并将我的断点放在那里。
为了在共享项目中对其进行测试,我创建了一个测试项目并将代码放在此处,在该代码中,我的UWP中的代码正在触发,但未打开任何内容(C#代码在运行时没有任何异常)。
我从中获取代码的这个项目是2017年的.net标准,请检查并提供帮助,我试图在最近几个小时内解决它。
答案 0 :(得分:1)
当我在调试时放置断点时,它总是转到UWP的主页上,这是我的错所在
这是Visual Studio中的已知问题。当前,您可以参考一种解决方法。
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugType>Full</DebugType>
</PropertyGroup>
将以上代码放入.NET标准库csproj文件中。
我已经用LifeCam HS-3000测试了您的代码,它以例外方式打开了系统相机。请检查您的相机是否可用。您可以使用系统相机应用程序进行验证。