2017-12-15 69 views
1

다운로드 한 이미지가있는 응용 프로그램이 로컬 html로 표시됩니다. 이 앱은 4 살이므로 계속 Objective-C을 사용하고 있습니다. 앱을 처음 실행하면 이미지 및 기타 동적 콘텐츠 (내가 확인한 문서/콘텐츠/디렉토리에 있음)가 다운로드됩니다.wkwebview - 문서 디렉토리의 이미지를 로컬 html로 표시

내가 할
NSString *contentBasePath = [app.contentManager contentBasePath]; 

:

의/var/모바일/용기/데이터/응용 프로그램/4AFD30E2이-F4F7-405A-9FE9-

나는 내용 위치를 얻기 위해이 코드를

를 : 1857EEC11CC7/문서/콘텐츠를 다음

나는 몇 HTML 페이지 동적으로 다운로드 된 이미지를 호출해야 내가 확인

<div class="box-round benefits-thumbnail" style="background-image:url('file://{{../contentBasePath}}/{{filename}}');"></div> 

, {{../contentBasePath}} 얻을 것이다 :

의/var/모바일/용기/데이터/응용 프로그램/4AFD30E2-F4F7-405A-9FE9-1857EEC11CC7/문서/콘텐츠

{{filename}}

example.jpg 

모두 맞습니다.

이 모든 것은 uiwebview과 작동합니다. 그러나 wkwebview을 사용해야하는데 이미지가 표시되지 않았습니다.

내가 시도 :

<div class="box-round benefits-thumbnail" style="background-image:url('{{../contentBasePath}}/{{filename}}');"></div> 

하고 그것은 여전히 ​​작동하지 않습니다.

내가 봤 거든 주위에 읽고 wkwebview 절대 경로를 허용하지 않는 것 같습니다. 그래서이 제안에 따라 시도 :

[_webConfig.preferences setValue:@YES forKey:@"allowFileAccessFromFileURLs"]; 

여전히 작동하지 않습니다.

어떻게 해결할 수 있습니까?

답변

0

WebKit의 제한 사항입니다. 해결 방법으로, 당신은 문서 디렉토리에있는 파일에 HTML 내용을 작성하고 문서에 [webView loadFileURL:fileUrl allowingReadAccessToURL:dirUrl]

링크를 사용하여로드 할 수 https://developer.apple.com/documentation/webkit/wkwebview/1414973-loadfileurl

+0

내가 전체 폴더 임시 폴더에 복사를 종료하고 문제가 해결됩니다. – sooon

+0

리소스는 번들 디렉토리에 있습니다. 문서 디렉토리에만이 문제점이 있습니다. –