权限
<uses-permission android:name="android.permission.CAMERA"/>
初始化:
private lateinit var mCameraManager: CameraManager
private lateinit var mCamera : Camera
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
mCameraManager =
this@MainActivity.getSystemService(Context.CAMERA_SERVICE) as CameraManager
} else {
mCamera = Camera.open()
}
open:
fun open () {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
mCameraManager.setTorchMode("0", true)
} else {
var parameters = mCamera.parameters
parameters.flashMode = Camera.Parameters.FLASH_MODE_TORCH
mCamera.parameters = parameters
mCamera.startPreview()
}
}
close:
fun close() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
try {
mCameraManager.setTorchMode("0", false)
} catch (e: Exception) {
e.printStackTrace()
}
} else {
mCamera.stopPreview()
}
}