我在iOS上使用带有Xamarin表单的Xam.Plugin.Media (版本: 2.3.0)。它在使用iOS-10的IPhone上工作得很好,但是当应用程序在使用iOS-10的IPad上运行时,相同的代码会把我踢出应用程序。
早些时候,在iOS-9上,它在iphone和ipad上都能正常工作。我期待着你的回复。谢谢
using Plugin.Media;
using System;
using System.Collections.Generic;
using System.Text;
using Xamarin.Forms;
namespace LearnForms.Pages
{
public class pgOpenCamera: ContentPage
{
private Image image1 { get; set; }
public StackLayout StkPage { get; set; }
public Button btnOpenCamera { get; set; }
public pgOpenCamera()
{
btnOpenCamera = new Button()
{
Text ="Open Camera!"
};
btnOpenCamera.Clicked += BtnOpenCamera_Clicked;
image1 = new Image();
StkPage = new StackLayout()
{
VerticalOptions = LayoutOptions.FillAndExpand,
HorizontalOptions = LayoutOptions.FillAndExpand,
Padding = new Thickness(20),
Children = {btnOpenCamera, image1}
};
Content = StkPage;
}
private async void BtnOpenCamera_Clicked(object sender, EventArgs e)
{
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"
});
if (file == null)
return;
DisplayAlert("File Location", file.Path, "OK");
image1.Source = ImageSource.FromStream(() =>
{
var stream = file.GetStream();
file.Dispose();
return stream;
});
}
}
}卡子..。
发布于 2016-10-04 17:08:11
摘自here
你的应用程序需要有NSCameraUsageDescription和NSPhotoLibraryUsageDescription的密钥才能访问设备的相机和图片库。当提示用户提供访问这些设备功能的权限时,将向用户显示您为每个密钥提供的字符串。
因此,我建议您将这些添加到您的Info.plist中。似乎是一个变化的since iOS 10。
https://stackoverflow.com/questions/39618152
复制相似问题