Xamarin.Forms IMediaPicker WinPhone

Xamarin.Forms IMediaPicker WinPhone

我正在开发一款将 运行 用于 Android 和 Windows Phone 8.0 的应用程序。 此应用程序必须能够拍照。 我通过使用 IMediaPicker 找到了一种简单的方法来做到这一点。 但是,它仅适用于 Android。 在 WinPhone 下面的代码 returns null.

mediaPicker = DependencyService.Get<IMediaPicker>();

如何在 WinPhone 上获取 IMediaPicker?有例子吗?

提前致谢!

我发现了问题。 在 WinPhone 上,mediaPicker 将为空。那么,就需要从Resolver中获取了。

if (mediaPicker == null)
{
    mediaPicker = Resolver.Resolve<IDevice>().MediaPicker;
}

但是,要使其正常工作,必须在 WinPhone 应用程序构造函数上启动解析器,如下所示:

var resolverContainer = new SimpleContainer();
resolverContainer.Register<IDevice>(t => WindowsPhoneDevice.CurrentDevice).Register<IDisplay>(t => t.Resolve<IDevice>().Display);

Resolver.SetResolver(resolverContainer.GetResolver());

希望对其他人有所帮助。