iOS:即使在拒绝许可后仍会启动相机和图库

iOS: Camera & Gallery is launched even after denying permission

我正在创建一个应用程序,它将使用相机和画廊来获取照片。如前所述,我正在调用 Ti.Media APIs,它在愉快的场景中运行良好。现在在测试时我点击拒绝访问相机和画廊。以下是结果:

图库

我拒绝访问图库后,右上角显示黑色 window 和取消。单击取消并再次调用 Ti.Media 打开图库后,它会显示白色 window 并显示锁和文本,然后我需要从隐私设置启用访问权限。

相机

在我拒绝访问相机后,每次我调用Ti.Media启动相机时,它都会显示相机UI(点击圆形按钮)和左下角的取消按钮,但是视野一片漆黑。

我的疑问是这是正常行为吗? API return 错误不应该是无法访问图库和相机,因此我们可以在应用程序中正确处理它吗?

我正在使用 5.3.1.GA SDK 并为 iOS 8.x 和 9.x.

开发它

我们需要使用以下代码来获取权限:

if (Ti.Media.hasCameraPermissions()) {
    return alert('You already have permission.');
}

Ti.Media.requestCameraPermissions(function(e) {
    if (e.success) {
        alert('You were granted permission.');
    } else {
        alert('You cannot access camera.');
    }
});

分别放置所需的代码而不是警报。