2016-08-24 12 views
3

파일 (pdf)을 작성하고 장치 메모리에 저장해야합니다. 나는 react-native-fs 라이브러리를 사용하고있다.React-native React-Native-fs (IOS)를 사용하여 PDF 파일 작성

사용자가 iBooks를 사용하여이 파일을 읽을 수있게하고 싶습니다.

이러한 반응 네이티브-FS의 상수

  • MainBundlePath (문자열) 주요 번들 디렉토리
  • CachesDirectoryPath (문자열) 캐시에 대한 절대 경로 절대 경로 디렉토리
  • DocumentDirectoryPath (String) 문서의 절대 경로 디렉토리

  • Tem poraryDirectoryPath (문자열) 임시 디렉토리의 절대 경로 (아이폰 OS 전용)

이 내 다운로드 코드 내가 그래서 기록 된 파일을 사용하여 볼 수 있습니다 TOFILE 할당해야 할 무엇

RNFS.downloadFile({ 
     fromUrl: fileLink,   
     toFile: RNFS.MainBundlePath + '/' + fileName 
    }).promise.then((dwResult) => { 

     console.log(dwResult.jobId + 'jobid'); 
     return true 
    }).catch((err) => { 

     alert(err); 
     return false 
    }) 
    } 

iBooks. 참고 : DocumentDirectoryPath를 사용하여 파일 앱 경로를 작성할 수 있습니다.

답변

1

iOS에는 몇 가지 제한 사항이 있으므로 iBooks를 사용하여 직접 파일을 열지 못할 수 있습니다. 그러나 react-native-fetch-blob의 최신 베타 버전에는 옵션 메뉴를 표시하고 사용자가 파일 처리 방법을 결정할 수있는 API가 있습니다.

또는 직접 다운로드 예는 옵션 메뉴

에게이 또한 디스플레이에 대한 Share Button, 기본 문서 뷰어로 파일을 미리보고있는 PDF 파일을 열 수 있습니다 react-native-fetch-blob

RNFetchBlob.config({ 
    fileCache : true, 
    appendExt : 'pdf' 
    }) 
    .fetch('GET',`${TEST_SERVER_URL}/public/book.pdf`) 
    .then((res) => { 
    // open the document directly 
    RNFetchBlob.ios.previewDocument(res.path()) 
    // or show options 
    // RNFetchBlob.ios.openDocument(res.path()) 
    }) 
+0

내가 글을 쓰거나 다운로드하면 내 응용 프로그램을 사용하여, 나는 그것을 ibooks 또는 뭔가를 사용하여 미리 볼 수 없습니다. 내 앱이 닫힐 때 미리보기를 원한다. 그게 가능하지 않니? –