답변:
장치에서 테스트해야하는 장치 별 기능이 많이 있지만 시뮬레이터를 사용하는 것보다 어렵지 않습니다. 장치에 대한 디버그 대상을 빌드하고 컴퓨터에 연결된 상태로 둡니다.
실제 장치가 필요한 작업 목록 :
사진 용 맞춤 오버레이를 테스트해야했습니다. 오버레이는 이미지의 크기 / 해상도에 따라 조정해야했습니다.
저는 Stefan의 제안과 비슷한 방식으로 접근했습니다. 저는 "더미"카메라 응답을 코딩하기로 결정했습니다.
시뮬레이터가 실행 중일 때 표준 "captureStillImageAsynchronouslyFromConnection"대신이 더미 코드를 실행합니다.
이 더미 코드에서 필요한 해상도의 "검은 색 사진"을 만든 다음 파이프 라인을 통해 전송하여 일반 사진처럼 취급합니다. 기본적으로 매우 빠른 카메라의 느낌을 제공합니다.
CGSize sz = UIDeviceOrientationIsPortrait([[UIDevice currentDevice] orientation]) ? CGSizeMake(2448, 3264) : CGSizeMake(3264, 2448);
UIGraphicsBeginImageContextWithOptions(sz, YES, 1);
[[UIColor blackColor] setFill];
UIRectFill(CGRectMake(0, 0, sz.width, sz.height));
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
NSData *imageData = UIImageJPEGRepresentation(image, 1.0);
위의 이미지는 현재 대부분의 장치에서 보내는 8MP 사진과 동일합니다. 분명히 다른 해상도를 테스트하려면 크기를 변경해야합니다.
카메라에 액세스해야하는 일반적인 이유는 AppStore의 스크린 샷을 만드는 것입니다.
시뮬레이터에서 카메라를 사용할 수 없기 때문에 좋은 트릭 (내가 아는 유일한 방법)은 스크린 샷을 찍을 시간에 필요한 크기로 뷰의 크기를 조정하는 것입니다. 나중에자를 것입니다.
물론, 더 큰 화면을 사용할 수있는 기기가 있어야합니다.
iPad는 레이아웃을 테스트하고 모든 장치의 스냅 샷을 만드는 데 적합합니다. iPhone6 +의 스크린 샷은 약간 늘려야합니다 (1,078125로 확장-큰 문제가 아닙니다…)
iOS 장치 해상도 빠른 참조에 대한 좋은 링크 : http://www.iosres.com/
편집 : 사용자 정의 카메라 뷰 컨트롤러가 사용되는 최근 프로젝트에서 AVPreview를 시뮬레이터에서 실행하는 데만 사용하는 대상의 UIImageView로 대체했습니다. 이렇게하면 iTunesConnect 업로드를위한 스크린 샷을 자동화 할 수 있습니다. 카메라 제어 버튼은 오버레이가 아니라 카메라 미리보기의보기에 있습니다.
아래의 @Craig 답변은 내가 꽤 똑똑하다고 생각한 또 다른 방법을 설명합니다-그것은 또한 내 카메라 오버레이와 함께 작동합니다.
나는 그것을 시도한 적이 없지만 시도해 볼 수 있습니다! iCimulator