1. ホーム
  2. ios

[解決済み] ユーザーがカメラの使用を許可しているかどうかを確認するにはどうすればよいですか?

2023-02-23 22:56:24

質問

これを書こうとしています。

if usergavepermissiontousercamera  
  opencamera
else 
  showmycustompermissionview

この単純な作業を行うための現在の方法を見つけることができませんでした。

注:別の方法を必要とする場合でも、iOS7でも動作するはずです。

どのように解決するのですか?

以下のコードで同じことができます。

if AVCaptureDevice.authorizationStatusForMediaType(AVMediaTypeVideo) ==  AVAuthorizationStatus.Authorized {
    // Already Authorized
} else {
    AVCaptureDevice.requestAccessForMediaType(AVMediaTypeVideo, completionHandler: { (granted: Bool) -> Void in
       if granted == true {
           // User granted
       } else {
           // User rejected
       }
   })
}

注意

  1. を追加していることを確認してください。 AVFoundation フレームワークをビルドフェーズの Link Binary セクションに追加してください。
  2. を記述する必要があります。 import AVFoundation をインポートするために、クラス上に AVFoundation

SWIFT 3

if AVCaptureDevice.authorizationStatus(forMediaType: AVMediaTypeVideo) ==  AVAuthorizationStatus.authorized {
   // Already Authorized
} else {
   AVCaptureDevice.requestAccess(forMediaType: AVMediaTypeVideo, completionHandler: { (granted: Bool) -> Void in
      if granted == true {
         // User granted
      } else {
         // User Rejected
      }
   })
}

スウィフト4

if AVCaptureDevice.authorizationStatus(for: .video) ==  .authorized {
    //already authorized
} else {
    AVCaptureDevice.requestAccess(for: .video, completionHandler: { (granted: Bool) in
        if granted {
            //access allowed
        } else {
            //access denied
        }
    })
}