Вчера только я пробовал этот код, чтобы использовать камеру для съемки. из моего приложения, и он работал на iphone после его портирования.
Я думаю, вам нужно вызвать метод takePicture на контроллере.
Просто предположение.
if([UIImagePickerController isSourceTypeAvailable:sourceType])
{
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.sourceType = sourceType;
picker.delegate = self;
if(sourceType == UIImagePickerControllerSourceTypeCamera)
[picker takePicture];
[self presentModalViewController:picker animated:YES];
[picker release];
}