0

我目前有这个代码:

NSArray *mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:imagePicker.sourceType];
imagePicker.mediaTypes = mediaTypes;

但它导致了这种泄漏:

figremote_createpropertylistfrombinaryplistdata

有人说用这个代替它:

CFStringRef mTypes[2] = { kUTTypeImage, kUTTypeMovie };

CFArrayRef mTypesArray = CFArrayCreate(CFAllocatorGetDefault(), (const void**)mTypes, 2, &kCFTypeArrayCallBacks);

imagePicker.mediaTypes = (NSArray*)mTypesArray;

CFRelease(mTypesArray);

问题是,有些设备没有电影模式。如果我允许该模式并且它不可用,它会导致问题吗?

4

1 回答 1

0

据我所知,没有不支持视频模式的设备。如果设备不支持视频模式,则根本不支持摄像头。我的建议是检查设备是否完全支持相机。在这种情况下,下面的代码就可以了。

if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
    NSLog(@"Device supports camera");
} else {
    NSLog(@"Device does not support camera");
}
于 2012-06-14T18:25:19.923 回答