Qt for ios 打开相机(添加权限)

版权声明:支持原创,转载请说明~ https://blog.csdn.net/luoyayun361/article/details/84334757

前言

我们都知道,Qt Quick开发移动端程序时,相机开发可以通过Camera+VideoOutput来实现预览,可用于开发 Android,也可以用于开发 IOS,这确实是很方便的,但是由于系统权限的限制,需要手动开启平台相关的权限。否则将会无法使用该功能。

正文

我们先来看看Qt 自带的示例 演示如何打开摄像头功能并预览:

 Item {
      width: 640
      height: 360

      Camera {
          id: camera

          imageProcessing.whiteBalanceMode: CameraImageProcessing.WhiteBalanceFlash

          exposure {
              exposureCompensation: -1.0
              exposureMode: Camera.ExposurePortrait
          }

          flash.mode: Camera.FlashRedEyeReduction

          imageCapture {
              onImageCaptured: {
                  photoPreview.source = preview  // Show the preview in an Image
              }
          }
      }

      VideoOutput {
          source: camera
          anchors.fill: parent
          focus : visible // to receive focus and capture key events when visible
      }

      Image {
          id: photoPreview
      }
  }

ios 添加相机权限

我们在之前的文章中介绍了如何将 Qt 程序拿到 xcode 中进行编译,文章在这里,在通过命令行生成 xcode 工程文件的时候会生成一个plist 文件,那么,根据那篇文章的介绍,我们在 xcode 中打开 Qt 工程,然后 点击工程名,可以进行属性设置,找到info 一栏,权限就是在 info 中进行添加的,这里的 info 属性就是配置 info.plist文件,如图:

然后将鼠标移动到左侧任意一个 item,会出现一个+号,点击加号即可添加一个属性栏:

点击加号添加 item,然后通过在列表显示中向下滑动并找到 Privacy - Camera Usage Descrip… 即可,如下图:

接下来右侧属性栏,双击并修改属性介绍,如下图:

填写这个 value 值的作用就是告诉用户调用摄像头的用途是什么,第一次在运行该程序的时候,调用摄像头 系统会自动弹出一个对话框, 内容就会显示调用摄像头的原因。

OK,打开该权限后就可以正常调用摄像头了。
此外,关于 IOS 的一些常用权限,可以顺便了解一下,也是通过同样的方式进行打开的:
相机权限:Privacy - Camera Usage Description 允许此权限才能使用相机功,这样才能录制视频,并且想要保存图片。
相册权限:Privacy - Photo Library Usage Description 允许此权限才能使用系统相册。
麦克风权限:Privacy - Microphone Usage Description 获取麦克风权限不然会崩,只有允许此权限才能录音。

参考文章:https://www.jianshu.com/p/84df2ca84ade

猜你喜欢

转载自blog.csdn.net/luoyayun361/article/details/84334757