openCamera static method
Implementation
static Future<void> openCamera(BuildContext context) async {
final deviceStore = DeviceStore.shared;
final hasPermission = await _checkAndRequestPermission(
context: context,
permissionType: PermissionType.camera,
deniedMessage: RoomLocalizations.of(context)!.roomkit_err_n1101_camera_no_permission,
);
if (!hasPermission) return;
final result = await deviceStore.openLocalCamera(deviceStore.state.isFrontCamera.value);
if (!result.isSuccess && context.mounted) {
if (result.errorCode == RoomError.openCameraNeedPermissionFromAdmin.code) {
Toast.warning(
context,
ErrorLocalized.convertToErrorMessage(result.errorCode, result.errorMessage),
useRootOverlay: true,
);
} else {
Toast.error(
context,
ErrorLocalized.convertToErrorMessage(result.errorCode, result.errorMessage),
useRootOverlay: true,
);
}
}
}