代码之家  ›  专栏  ›  技术社区  ›  Anirudha Gupta

在我的XAMARIN表单应用程序中,UWP中没有打开相机?

  •  0
  • Anirudha Gupta  · 技术社区  · 7 年前

    从最近几个小时开始,我试着做一个按钮,按一下按钮相机就会打开。我只测试它的超宽带,它没有按预期工作。

    我尝试在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"
            });
    
        }
    

    项目是.NET标准2017,VisualStudio已经在XAMARIN 3中创建了这个项目,我也在2.4进行了测试,没有显示任何东西。

    在最初的几次中,我的断点在我的xamarin.forms项目中出现,但突然它们停止了,也许这是异步的事情。目前,当我调试并放置断点时,它会导航到app.xaml.cs并将断点放在那里。

    为了在一个共享项目中测试它,我创建了一个测试项目并把代码放在那里,在那个代码中,我的代码在UWP启动,但没有打开(C代码没有在运行时出现任何异常)。

    这个项目,我采取我的代码是在2017年的.NET标准,请检查和帮助,我试图解决它从过去几个小时。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Nico Zhu    7 年前

    当我在调试时设置断点时,它总是转到uwp的主页面,我这边出了什么问题

    这是visual studio中的已知问题。目前,有一个解决办法,你可以参考。

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

    将上述代码放入.NET标准库csproj文件中。

    我已经用lifecam hs-3000测试了你的代码,它打开了系统摄像头。请检查您的相机是否可用。你可以用系统 照相机 应用程序来验证这一点。