Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 我是否可以将可能的源类型列为不可用的源类型?_Iphone_Objective C_Ios_Memory Leaks_Uiimagepickercontroller - Fatal编程技术网

Iphone 我是否可以将可能的源类型列为不可用的源类型?

Iphone 我是否可以将可能的源类型列为不可用的源类型?,iphone,objective-c,ios,memory-leaks,uiimagepickercontroller,Iphone,Objective C,Ios,Memory Leaks,Uiimagepickercontroller,我目前有以下代码: NSArray *mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:imagePicker.sourceType]; imagePicker.mediaTypes = mediaTypes; 但它导致了这次泄漏: figremote_createpropertylistfrombinaryplistdata 有人说用这个来代替它: CFStringRef mTypes[2] = {

我目前有以下代码:

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);

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

据我所知,没有设备不专门支持视频模式。如果设备不支持视频模式,它将根本不支持摄像头。我的建议是检查设备是否支持摄像头。在这种情况下,可以使用以下代码

if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
    NSLog(@"Device supports camera");
} else {
    NSLog(@"Device does not support camera");
}