iPhone:是否可以轮询相机是否处于活动状态?

时间:2012-01-29 07:09:43

标签: iphone objective-c ios camera

我们正在创建一个照片应用,让用户可以拍摄大量系列照片。由于某种原因,相机似乎没有明显的触发死亡。如果相机正在运行且设备处于空闲状态(屏幕保护程序/锁定)或按下主iPhone按钮且应用程序已最小化,则通常会出现这种情况。所以我们需要找到一种方法来检查相机是否仍在运行。这可以以某种方式进行调查吗?有人经历过类似的问题吗?

1 个答案:

答案 0 :(得分:1)

如果您可以在self.view上获得相机视图,您可以说相机处于活动状态或存在状态..以下是检查相机视图是否可用的方法 -

UIView *cameraView = [self findCamControlsLayerView:self.view];
if (cameraView)
// camera is present
else
// camera is not present




// Find the view that contains the camera controls (buttons)
- (UIView*)findCamControlsLayerView:(UIView*)view {

Class cl = [view class];
NSString *desc = [cl description];
if ([desc compare:@"PLCropOverlay"] == NSOrderedSame)
return view;

for (NSUInteger i = 0; i < [view.subviews count]; i++)
{
UIView *subView = [view.subviews objectAtIndex:i];
subView = [self findCamControlsLayerView:subView];
if (subView)
return subView;
}

return nil;
}