3

アプリでカメラを実行していますが、シミュレーターではカメラにアクセスするためのボタンが無効になっていますが、ユーザーがカメラを使用しない場合にポップアップするアラートもあります。デバイスにカメラがない場合は表示されたくありません。使用したのは次のとおりです。

if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
    //alert
}

しかし、シミュレーターではまだアラートを実行しています。残念ながら、テストするカメラのないデバイスを持っていません。問題があるかどうかはわかりません. シミュレーターにはカメラがないので、それが実行されるとは思いませんよね?

4

1 に答える 1

0

それが私がこの目的のために使用しているものです:

- (void) initializeCamera {
    AVCaptureDevice* device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
    NSError *error = nil;
    AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];

    if(!input) {
        // running on simulator or something else without camera
        NSLog(@"camera is not found");
    }
    else {
        // camera exists, you can alert
    }
}
于 2013-03-07T09:08:53.170 に答える