アプリに WKWebView を実装しました。表示された Web ページには、写真から画像をインポートするファイル入力があります。その入力を押して「写真を撮る」または「写真ライブラリ」のいずれかを選択すると、アプリが突然クラッシュします。これは、アプリに写真を撮るかライブラリからインポートする権限がないためだと思われます。
ユーザーが上記の方法 (写真を撮る、または写真ライブラリ) のいずれかを選択した場合に、許可要求をプッシュするにはどうすればよいですか?
私はWKWebViewでSwift 3.0を使用しています。
ベストアンサー1
プログラムでアクセスを要求することもできますが、ほとんどの場合、アクセスしたかどうかを知る必要があるため、この方法を好みます。
Swift 4 アップデート:
//Camera
AVCaptureDevice.requestAccess(for: AVMediaType.video) { response in
if response {
//access granted
} else {
}
}
//Photos
let photos = PHPhotoLibrary.authorizationStatus()
if photos == .notDetermined {
PHPhotoLibrary.requestAuthorization({status in
if status == .authorized{
...
} else {}
})
}
コードを共有していないため、これが役立つかどうかはわかりませんが、一般的に言えば、ベストプラクティスとして使用してください。