Öffnen Sie das PDF in einem WebView
Ich will eine PDF öffnen, in meinem WebView, und ich fand und kombinierte codes in diesem forum.
Aber es fängt das "Keine PDF-Anwendung gefunden", obwohl ich mehrere PDF apps installiert, darunter der Adobe Reader.
Hier der code:
private class PsvWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
if (url.contains(".pdf")) {
Uri path = Uri.parse(url);
Intent pdfIntent = new Intent(Intent.ACTION_VIEW);
pdfIntent.setDataAndType(path, "application/pdf");
pdfIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
try
{
startActivity(pdfIntent);
}
catch(ActivityNotFoundException e)
{
Toast.makeText(PsvWebViewActivity.this, "No PDF application found", Toast.LENGTH_SHORT).show();
}
catch(Exception otherException)
{
Toast.makeText(PsvWebViewActivity.this, "Unknown error", Toast.LENGTH_SHORT).show();
}
}
return true;
} } }
- Ich finde es seltsam, dass dies nicht funktioniert, und dass die einzige Lösung war, zeigt ihn in einer WebView mithilfe von google, wenn es wirklich sah Sie aus, als wollten die PDF-Datei aus einer anderen Anwendung anzeigen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
(1) Google Docs Viewer, öffnen Sie es im android-Browser wie,
Update:
(2) Überprüfen Sie diese Bibliothek, in bauen.gradle(app Modul) hinzufügen dieser Abhängigkeit
Ich weiß, diese Frage ist alt.
Aber ich mag den Ansatz von Xamarin zu verwenden pdf.js von Mozilla. Es funktioniert auch auf älteren Android-Versionen, brauchen Sie nicht eine spezielle PDF-Viewer-app für das und Sie können ganz einfach anzeigen, ein PDF-Dokument in Ihren apps, die Ansichten Hierarchie.
Git für diese: https://mozilla.github.io/pdf.js/
Zusätzliche Optionen: https://github.com/mozilla/pdf.js/wiki/Viewer-options
Fügen Sie einfach die pdfjs-Dateien, um Ihre "Assets":
Und rufen Sie die folgende Weise:
Coole Sache: Wenn Sie möchten, reduzieren die Menge der Funktionen /controls. Gehen Sie auf die Assets/pdfjs/web/viewer.html Datei und markieren Sie bestimmte Steuerelemente, die als ausgeblendet. Mit
E. g. Wenn Sie nicht wie die rechts-toolbar:
Update:
Dies wird öffnen Sie die integrierte app (PDF-Viewer) zur Anzeige von pdf-Datei, wenn OS >= Eibisch (API 23), sonst öffnet der browser zum anzeigen von pdf verwenden "docs.google.com" server.
Die alte url nicht funktioniert, benutzen Sie diese neue url
Ich glaube, das hat auch ein limit , so dass eine bessere Möglichkeit ist das direkte starten von einer Absicht zu einem pdf-viewer-app , wenn es keine app starten, die pdf dann mit einem webview.
diese Arbeit für mich
können Sie versuchen, diese.
es funktioniert für beide .pdf und .docx