Для всех, кто застрял с этой проблемой, вот что я наконец узнал:
Тег объекта HTML 5: не работает
Встроенный тег: не работает
Плагин childBrowser: я думаю, что он будет работать, но он предназначен для версии 2.0.0. Таким образом, вы получите много ошибок, поэтому у меня не получилось.
Phonegap InAppViewer: если вы используете его следующим образом:
window.open('http://www.example.com/test.pdf', '_blank', 'location=yes')
это не сработает. InAppViewer не может открыть PDF-файл, не имеет значения, является ли PDF-файл внешним или локальным.
Мои решения на данный момент (а не то, что было на самом деле):
вы можете вызвать оконную функцию с помощью _system. как это:
window.open('http://www.example.com/test.pdf', '_system', 'location=yes')
это откроет PDF-файл в обычном браузере и загрузит его. После загрузки он спросит, следует ли открыть его в программе просмотра PDF. Но после этого вам нужно вернуться в свое приложение и открыть его снова.
Другая возможность заключается в том, что вы просто загружаете его на свою SD-карту с помощью API файловой системы Phonegap следующим образом:
var fileTransfer = new FileTransfer();
fileTransfer.download(
"http://developer.android.com/assets/images/home/ics-android.png",
"file://sdcard/ics-android.png",
function(entry) {
alert("download complete: " + entry.fullPath);
},
function(error) {
alert("download error source " + error.source);
alert("download error target " + error.target);
alert("upload error code" + error.code);
});
Последнее, что я узнал, это использовать документы/диск Google, чтобы открыть его с помощью InAppViewer, связанного с документами Google, например:
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
window.open('https://docs.google.com/viewer?url=http://www.example.com/test.pdf&embedded=true', '_blank', 'location=yes');
ref = window.open('index.html', '_self');
}
Это откроет PDF-файл в приложении, просматривая его в документах Google. Вы можете создать постоянную ссылку здесь: https://docs.google.com/viewer. Таким образом, даже если вы измените файл PDF, он все еще будет работать
Я надеюсь, что это резюме поможет вам сэкономить время. Если есть другое решение, дайте мне знать
person
Marc Ster
schedule
30.05.2013