2013-10-02 2 views
5

현재 JavaScript로 제작 된 파노라마 뷰어 인 krpano 뷰어를 사용하는 앱을 제작 중입니다. UIWebView에서이 파노라마 뷰어를 iPad에 저장된 로컬 이미지로로드합니다. iOS 7 : 범위 예외로 인해 UIWebView가 충돌 함

그러나 잠시 동안 파노라마 뷰어를 사용 후

, 나는이 오류와 응용 프로그램의 충돌을 얻을 : 사람이 왜 이런 일 아이디어가 있습니까
Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[WebCoreSharedBufferData getBytes:range:]: range {0, 4000} exceeds data length 0' 
*** First throw call stack: 
(0x2e213f53 0x38a226af 0x2e213e95 0x2eb4dc31 0x2e16ca65 0x2ef4ce47 0x2ef4cd21 0x2ef68f03 0x2ef682db 0x2ef68029 0x2ef67e61 0x2ef67dcf 0x2ef6bd39 0x2ef6b813 0x2ef5471f 0x2e29b2ed 0x30635c6d 0x30635117 0x30621069 0x30620bad 0x3061d949 0x3061c051 0x38f0c297 0x38f0c09b 0x38f0cd15 0x38f0cf8d 0x39047dbf 0x39047c84) 
libc++abi.dylib: terminating with uncaught exception of type NSException 

? UIWebView에서 온라인 페이지를로드 할 때 문제가 없습니다.

도움 주셔서 감사합니다.

+1

재미있는 점은 시뮬레이터가 아닌 장치에서만 발생한다는 것입니다. 이 오류와 동일한 문제가 발생했습니다. : ImageIO : JPEG JPEG 파일이 아닙니다 : 0x00으로 시작합니다. 0x00 – chritaso

+0

@chritaso에서이 문제를 생각해 냈습니까? – hoya21

+0

@ hoya21 Ortwin Gentz의 대답에 대한 제 의견을 참조하십시오. – chritaso

답변

1

이것은 아마도 메모리 관련 문제 일 것입니다. 웹 애플리케이션이 Javascript를 사용하여 너무 많은 메모리를 할당하면 이상한 일이 일어납니다.

가장 좋은 방법은 메모리 경고 알림을 관찰하고 외부에서 웹 응용 프로그램에 영향을 미치는 것입니다. 물론 이것은 웹 응용 프로그램의 특성에 따라 다르지만 잠시 동안 웹보기가 대기중인 사용자 입력 작업을 따라 잡거나 메모리 경고가 지속되면 웹보기를 다시로드하려고 시도하는 동안 잠시 동안 userInteractionEnabled을 비활성화하려고 할 수 있습니다.

불행히도 여기에는 쉬운 해결책이 없습니다.

+1

안녕하세요 오트 윈, 네가 맞다고 생각해. 응용 프로그램이 손상되는 것을 막기 위해 Webview를 방지하기 위해 많은 노력을했지만, 도움이되는 유일한 방법은 웹보기에서 해상도가 낮은 이미지를 사용하는 것이 었습니다. 이는 실제 해결 방법이 아니므로 해결 방법이 없으면 결과가 좋지 않을 것입니다. 그러나 그것은 당신이 말한 것처럼 보이며, 당신은 그 행동에 대해 많은 통제권을 가지고 있지 않습니다. – chritaso

관련 문제