This simple code:
Camera.Parameters params = currentCamera.getParameters();
params.setPreviewFpsRange( 10000, 15000 );
currentCamera.setParameters( params );
I found that if getSupportedPreviewFpsRange list has only one pair of supported values like (2000, 35000) which is 2fp to 35fps then it will accept any values between that range.
If list containt more pairs then you need to use one of them
List fpsRange = param.getSupportedPreviewFpsRange();
if (fpsRange.size() == 1) {
//fpsRange.get(0)[0] < CAMERA_PREVIEW_FPS < fpsRange.get(0)[1]
param.setPreviewFpsRange(CAMERA_PREVIEW_FPS, CAMERA_PREVIEW_FPS);
} else {
//pick first from list to limit framerate or last to maximize framerate
param.setPreviewFpsRange(fpsRange.get(0)[0], fpsRange.get(0)[1]);
}