#532·TakePhoto

你好 我在项目中使用了takephoto框架 但是小米CC9似乎不能正常运行

Author: yuqiaodanCreated Oct 22, 2019Updated Jul 29, 2021

我在项目中使用了takephoto框架来进行拍照操作,应用场景是:打开相机,拍一张照,确认照片后,紧接着再次启动相机拍下一张,直到取消拍照 或者 是照片数量大于9张 这个操作在小米8及其他大部分手机上都完美运行,但是小米CC9会出现无法拍照的现象 具体问题是这样的:小米CC9启动相机后,点击拍照,确认照片后紧接着开始下一次拍摄,但是在第二次拍摄中,点击拍照后却没有反应 启动相机的方法是startShoot(),这个方法会在activity onCreat()中调用和takeSuccess()方法中调用

    private fun startShoot() {
        if (photoPaths!!.size >= 9) {
            showToast(R.string.max_photot_9)
            return
        }
        val file = createFile()
        val imageUri = Uri.fromFile(file)
        initTakePhoto().onPickFromCapture(imageUri)
    }
    private fun initTakePhoto(): TakePhoto {
        if (takePhoto == null) {
            takePhoto = TakePhotoInvocationHandler.of(this).bind(TakePhotoImpl(this, this)) as TakePhoto?
        }
        return takePhoto!!
    }