使用pdf.js中的查看器我成功設法打開了一個InAppBrowser的本地pdf文件。下面的代碼在iOS上沒有任何缺陷:InAppBrowser打開並顯示與查看器的pdf!本地文件不能使用pdf.js查看器://在Android上,在iOS上工作
window.resolveLocalFileSystemURL(fileURL, function (file) {
window.open('lib/pdf.js-master/web/viewer.html?file=' + file.toURL(), '_blank', 'location=no')
}, fail);
file.toURL()
呈現爲類似file:///blabla/bla
。
但是,在Android上的PDF加載失敗,給控制檯錯誤
"XMLHttpRequest cannot load file:///android_asset/www/lib/pdf.js-master/web/locale/locale.properties. Cross origin requests are only supported for HTTP.", source: file:///android_asset/www/lib/pdf.js-master/web/viewer.html?file=file:///storage/emulated/0/Android/data/xxxxxxxxx/cache/677.pdf
並沒有連www/lib/pdf.js-master/web/locale/locale.properties
文件...我不知道這有什麼的問題,但我在這裏包括它。
但是,這跟該錯誤
"XMLHttpRequest cannot load file:///storage/emulated/0/Android/data/xxxxxxxxx/cache/677.pdf. Cross origin requests are only supported for HTTP.", source: file:///android_asset/www/lib/pdf.js-master/web/viewer.html?file=file:///storage/emulated/0/Android/data/xxxxxxxxx/cache/677.pdf
這絕對是有事情做的問題。
產生以下屏幕。
我不知道如何解決這個錯誤。再一次,它在iOS上完美運行!我能做些什麼來使它在android上工作?我如何啓用file:///
的跨源請求?這是問題嗎?
感謝您的幫助。
文件是否存在於路徑中? – Raptor 2015-04-01 01:44:29
它呢!我可以成功地做'file.moveTo(destination,'newname');' – Clawish 2015-04-01 01:47:01
我注意到你在模擬器上。這是否適用於真正的Android設備? – Raptor 2015-04-01 01:49:33