AndroidStudio(Kotlin)中打开相机的最新API信息
创始人
2024-08-21 11:30:17
0

最新的相机API已经不再使用在Android Manifest文件中声明相机权限的方式,而是采用了新的运行时权限API。以下是使用最新的相机API打开相机的步骤:

1.在AndroidManifest.xml文件中添加以下两个权限:

2.使用以下代码在运行时请求相机权限:

if (ContextCompat.checkSelfPermission(this,Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this,arrayOf(Manifest.permission.CAMERA), REQUEST_CAMERA_PERMISSION_CODE) }

3.在onRequestPermissionsResult回调中处理相机权限请求结果,如果用户授予了相机权限,就打开相机并启动预览:

override fun onRequestPermissionsResult(requestCode: Int, permissions: Array, grantResults: IntArray) { if (requestCode == REQUEST_CAMERA_PERMISSION_CODE) { if (grantResults.size == 1 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { // 授予了相机权限,打开相机并启动预览 openCamera() } else { // 拒绝了相机权限,可以提示用户或者直接关闭Activity finish() } } else { super.onRequestPermissionsResult(requestCode, permissions, grantResults) } }

4.使用以下代码打开相机,这里使用了CameraX API:

val cameraProviderFuture = ProcessCameraProvider.getInstance(this) cameraProviderFuture.addListener(Runnable { val cameraProvider: ProcessCameraProvider = cameraProviderFuture.get() val preview = Preview.Builder().build() preview.setSurfaceProvider(previewView.createSurfaceProvider()) val cameraSelector = CameraSelector.Builder().requireLensFacing(CameraSelector.LENS_FACING_BACK).build() val imageCapture = ImageCapture.Builder().build() cameraProvider.unbindAll() camera = cameraProvider.bindToLifecycle(this as LifecycleOwner, cameraSelector, preview, imageCapture) }, ContextCompat.getMainExecutor(this))

上面的代码中,previewView是相机预览的View,可以是一个TextureView或者Surface

相关内容

热门资讯

科普!aapoker插件,we... 科普!aapoker插件,wepoker辅助软件视频,安装教程(有挂透明);支持多人共享记分板与复盘...
必知教程!wepoker好友助... 必知教程!wepoker好友助力码,aapoker透视怎么用,AA德州教程(有挂技巧)准备好在aap...
技术分享!德州透视hhpoke... 技术分享!德州透视hhpoker,拱趴大菠萝十三水作弊,黑科技教程(有挂透明);最新版2024是一款...
科技介绍!wepoker黑侠辅... 1、科技介绍!wepoker黑侠辅助器,wepoker有辅助器吗,解密教程(有挂技巧)2、进入游戏-...
总算了解!aapoker插件,... 1、总算了解!aapoker插件,德扑圈透视挂,安装教程(有挂透视)2、进入游戏-大厅左侧-新手福利...
实测教程!hhpoker软件安... 实测教程!hhpoker软件安装包,wepoker软件安装包,德州论坛(有挂技巧);实战中需综合运用...
一分钟了解!pokemmo手机... 一分钟了解!pokemmo手机脚本辅助器,pokerworld破解版下载,教你攻略(有挂软件);实战...
解密关于!wepoker怎么获... 解密关于!wepoker怎么获得好牌,we-poker是什么软件,必胜教程(有挂教程);1分钟了解详...
必备攻略!wepoker私人局... 您好,德普之星辅助工具如何设置这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很...
玩家必看教程!aapoker辅... 玩家必看教程!aapoker辅助器是真的吗,wpk透视辅助方法,玩家教你(有挂方法)关于aapoke...