Google Document Viewer показывает "Недоступно для предварительного просмотра"
Я использовал Google Document Viewer для открытия файлов PDF на моем устройстве Android. Вместо того, чтобы открывать мои файлы PDF, отображается черный экран с текстом "Нет предварительного просмотра". Я проверил с образцами файлов PDF от Google. Они работают нормально, но не мои PDF-файлы. Что-нибудь, что мне нужно сделать со стороны кода, чтобы просмотреть мой PDF.
http://docs.google.com/viewer?url=myurl.pdf
3 ответа
Был файл, который показал эту проблему. Переименовал его, чтобы убрать пробелы в имени файла, обновил мою ссылку и все заработало. Обратите внимание, что пробелы были правильно закодированы в HTML как%20, поэтому это "исправление" не должно быть необходимым. Но я не могу спорить с успехом. Удачи.
Наконец-то решили эту проблему. Проблема есть в URL. В URL я заменил%2 на%252, затем через 1 неделю решил эту проблему.
Короче хочу кодировать строку запроса.
if (Url != null && Url.contains("=")) {
String Urll =Url.substring(Url.lastIndexOf("&Signature=") + 1).replace("%2B", "%252B");
if (null != Urll && Urll.length() > 0 && Urll.contains("%252B")) {
int endIndex = Url.lastIndexOf("Signature");
if (endIndex != -1) {
Url = Url.substring(0, endIndex);
Url = Url + Urll;
}
}
Url = Url.replace("?AWSAccessKeyId=", "?AWSAccessKeyId%3D")
.replace("&Expires=", "%26Expires%3D").replace("&Signature=", "%26Signature%3D");
}
Попробуйте закодировать URL-адрес следующим образом
try {
encode_url=URLEncoder.encode(url,"UTF-8"); //Url Convert to UTF-8 It important.
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
webView.loadUrl("https://docs.google.com/viewerng/viewer?embedded=true&url="+encode_url);