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 に答える