在我的 xamarin.forms 应用程序的 UWP 中无法打开相机?

Camera not open in UWP in my xamarin.forms app?

从最近几个小时开始,我正在尝试制作一个按钮,点击按钮相机就会打开。我只测试了 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 标准,请检查并帮助,我正在尝试从最近几个小时开始解决它。

when I put breakpoint at debugging it's always goes to mainpage of UWP, what is wrong on my side

这是 Visual Studio 中的已知问题。目前,有一个解决方法可供您参考。

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugType>Full</DebugType>
</PropertyGroup>

将以上代码放在 .NET 标准库 csproj 文件中。

而且我已经用 LifeCam HS-3000 测试了您的代码,它打开系统摄像头时出现异常。请检查您的相机是否可用。您可以使用系统 Camera 应用程序来验证这一点。