在我的android应用程序中打开PDF文件,无需使用任何浏览器或第三方应用程序

在我的android应用程序中打开PDF文件,无需使用任何浏览器或第三方应用程序,android,pdf,pdfviewer,external-application,Android,Pdf,Pdfviewer,External Application,我已经在这个话题上搜索了很多,但是我找不到正确的答案。我恳请不要在没有答复的情况下重复标记 我的android应用程序中有两个活动 1] 。服务器上可用的PDF文件列表,单击其中任何一个文件开始下载并显示进度条,直到下载完成。 下载完成后,打开带有两个按钮的弹出窗口[查看]或[取消]。 单击查看打开第二个活动,将pdf文件路径作为参数传递 2] 。在第二个活动中,我只想打开应用程序活动中传递的PDF文件 我不想使用任何浏览器、驱动器、文件管理器或任何外部android应用程序 我如何才能做到这一

我已经在这个话题上搜索了很多,但是我找不到正确的答案。我恳请不要在没有答复的情况下重复标记

我的android应用程序中有两个活动

1] 。服务器上可用的PDF文件列表,单击其中任何一个文件开始下载并显示进度条,直到下载完成。 下载完成后,打开带有两个按钮的弹出窗口[查看]或[取消]。 单击查看打开第二个活动,将pdf文件路径作为参数传递

2] 。在第二个活动中,我只想打开应用程序活动中传递的PDF文件

我不想使用任何浏览器、驱动器、文件管理器或任何外部android应用程序

我如何才能做到这一点,请为我提供适当的解决方案。
提前感谢:)

将文件名从FirstActivity发送到SecondActivity

Intent i=new Intent(FirstActivity.this, SecondActivity.class);
 i.putExtra("file", fileUrl);
 startActivity(i);
在SeconActivity中,使用
WebView

编辑

Intent i = getIntent();
    String myPdfUrl = i.getStringExtra("file");
    String url = "http://docs.google.com/gview?embedded=true&url=" + myPdfUrl;
    String doc="<iframe src='"+url+"' width='100%' height='100%' style='border: none;'></iframe>";
    WebView web=(WebView)findViewById(R.id.webViewpdf);
    webView.getSettings().setJavaScriptEnabled(true); 
    webView.loadData(doc, "text/html", "UTF-8");
Intent i=getIntent();
字符串myPdfUrl=i.getStringExtra(“文件”);
字符串url=”http://docs.google.com/gview?embedded=true&url=“+多年电价确定框架;
字符串doc=”“;
WebView web=(WebView)findViewById(R.id.webViewpdf);
webView.getSettings().setJavaScriptEnabled(true);
加载数据(doc,“text/html”,“UTF-8”);
layout.xml

<LinearLayout 
   xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent">

    <WebView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/webViewpdf"/>

</LinearLayout>

将文件名从FirstActivity发送到SecondActivity

Intent i=new Intent(FirstActivity.this, SecondActivity.class);
 i.putExtra("file", fileUrl);
 startActivity(i);
在SeconActivity中,使用
WebView

编辑

Intent i = getIntent();
    String myPdfUrl = i.getStringExtra("file");
    String url = "http://docs.google.com/gview?embedded=true&url=" + myPdfUrl;
    String doc="<iframe src='"+url+"' width='100%' height='100%' style='border: none;'></iframe>";
    WebView web=(WebView)findViewById(R.id.webViewpdf);
    webView.getSettings().setJavaScriptEnabled(true); 
    webView.loadData(doc, "text/html", "UTF-8");
Intent i=getIntent();
字符串myPdfUrl=i.getStringExtra(“文件”);
字符串url=”http://docs.google.com/gview?embedded=true&url=“+多年电价确定框架;
字符串doc=”“;
WebView web=(WebView)findViewById(R.id.webViewpdf);
webView.getSettings().setJavaScriptEnabled(true);
加载数据(doc,“text/html”,“UTF-8”);
layout.xml

<LinearLayout 
   xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent">

    <WebView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/webViewpdf"/>

</LinearLayout>


您是否检查了pdf查看器库?使用意图打开该PDF文件并按如下意图传递该文件,希望这将帮助您解决您的问题,它适用于我。。。。private void viewPdf(File myFile){Intent Intent Intent=new Intent(Intent.ACTION_VIEW);Intent.setDataAndType(Uri.fromFile(myFile),“application/pdf”);Intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);startActivity(Intent);}此代码将在默认的PDF文件查看器中打开PDF文件,或列出各种PDF查看器。您是否尝试/应用了我的更新答案。谢谢@Youngjae我已经检查了它,这正是我想要的,它适合我。:)是的,@userJP我已经检查过了,效果很好。非常感谢您的支持。:)你查过pdf查看器库了吗?使用意图打开该PDF文件并按如下意图传递该文件,希望这将帮助您解决您的问题,它适用于我。。。。private void viewPdf(File myFile){Intent Intent Intent=new Intent(Intent.ACTION_VIEW);Intent.setDataAndType(Uri.fromFile(myFile),“application/pdf”);Intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);startActivity(Intent);}此代码将在默认的PDF文件查看器中打开PDF文件,或列出各种PDF查看器。您是否尝试/应用了我的更新答案。谢谢@Youngjae我已经检查了它,这正是我想要的,它适合我。:)是的,@userJP我已经检查过了,效果很好。非常感谢您的支持。:)谢谢@userJP,但此代码提供了在驱动器或浏览器(Chrome、firefox等)中打开PDF文件的选项。我只想在第二个活动中打开。谢谢userJP@Youngjae我的概念需要你的两个答案。谢谢@userJP,但此代码提供了在驱动器或浏览器(Chrome、firefox等)中打开PDF文件的选项。我只想在第二个活动中打开。谢谢userJP@Youngjae我的概念需要你的两个答案。