All functions used in flashlight app main use of CameraManager
boolean hasFlash;
boolean isFlashOn = false ;
ImageView i;
CameraManager cameraManager;
String camerId;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
i = findViewById(R.id.iv);
hasFlash = this.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
if(!hasFlash){
new AlertDialog.Builder(MainActivity.this)
.setIcon(R.drawable.ic_launcher_foreground)
.setTitle("Error")
.setMessage("Sorry, your device doesn't support camera flash")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
finish();
}
}).show();
}
GetCamera();
}
void TurnOnFlash() {
try {
cameraManager.setTorchMode(camerId,true);
isFlashOn = true;
} catch (CameraAccessException e) {
e.printStackTrace();
}
}
void TurnOffFlash(){
try {
cameraManager.setTorchMode(camerId, false);
isFlashOn = false;
} catch (CameraAccessException e) {
e.printStackTrace();
}
}
private void GetCamera(){
cameraManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);
try {
camerId = cameraManager.getCameraIdList()[0];
}catch(CameraAccessException e){
e.printStackTrace();
}
}