Отображение документов DOCX, Excel, PDF в моем приложении - PullRequest
0 голосов
/ 28 ноября 2018

У меня есть приложение для Android, в котором я хочу отображать файлы в форматах pdf, excel, docx, txt из соответствующих URL-адресов.Я могу отобразить эти файлы с помощью внешних приложений, но для этого файл сначала загружается и сохраняется на устройстве, а затем отображается.Я не хочу загрузку, я пытался использовать Google Viewer для отображения файлов в WebView, но, поскольку документы являются частными, они не будут отображаться.Я пробовал что-то вроде ниже: -

    mDocumentUrl = mIntent.getStringExtra(Constant.DOCUMENT_URL);

    wvDocumentReader.getSettings().setJavaScriptEnabled(true);

    wvDocumentReader.setWebViewClient(new WebViewClient(){

                @Override
                public void onPageStarted(WebView view, String url, Bitmap favicon)
                {
                    super.onPageStarted(view, url, favicon);
                    wvProgressBar.setVisibility(View.VISIBLE);
                }

                @Override
                public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request)
                {
                    view.loadUrl(request.getUrl().toString());
                    return true;
                }

                @Override
                public void onPageFinished(WebView view, String url)
                {
                    super.onPageFinished(view, url);
                    wvProgressBar.setVisibility(View.GONE);
                }
            });
  wvDocumentReader.loadUrl("http://docs.google.com/gview?embedded=true&url="+ mDocumentUrl);

Может кто-нибудь предложить библиотеку или обходной путь для достижения этой цели?Любая помощь приветствуется.

1 Ответ

0 голосов
/ 28 ноября 2018

Я думаю, вы должны использовать пользовательскую библиотеку для этого.

См .: https://github.com/googlesamples/android-PdfRendererBasic

Существует также другой способ отображения PDF без вызова другого приложения

Это способ отображения PDF в приложении для Android, которое встраивает PDF-документ в веб-просмотр Android с помощью поддержки http://docs.google.com/viewer

псевдо

String doc="<iframe src='http://docs.google.com/viewer?url=+location to your PDF File+' 
          width='100%' height='100%' 
          style='border: none;'></iframe>";

. Пример показан ниже

 String doc="<iframe src='http://docs.google.com/viewer?url=http://www.iasted.org/conferences/formatting/presentations-tips.ppt&embedded=true' 
          width='100%' height='100%' 
          style='border: none;'></iframe>";

Код

WebView  wv = (WebView)findViewById(R.id.webView); 
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setPluginsEnabled(true);
wv.getSettings().setAllowFileAccess(true);
wv.loadUrl(doc);
//wv.loadData( doc, "text/html",  "UTF-8");

и в манифесте укажите

<uses-permission android:name="android.permission.INTERNET"/>

ИЛИ

См. Это: https://stackoverflow.com/a/43292083/9976418

...