在Android应用程序中打开PDF文件时,可以使用以下代码示例来解决“被退回”的问题:
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.widget.Toast;
public class PdfOpener {
public static void openPdf(Context context, String filePath) {
try {
Uri uri = Uri.fromFile(new File(filePath));
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, "application/pdf");
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Intent newIntent = Intent.createChooser(intent, "Open PDF");
newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(newIntent);
} catch (ActivityNotFoundException e) {
Toast.makeText(context, "No PDF Viewer Installed", Toast.LENGTH_SHORT).show();
}
}
}
openPdf()
方法,传递PDF文件路径作为参数:String pdfFilePath = "your_pdf_file_path_here";
PdfOpener.openPdf(getApplicationContext(), pdfFilePath);
这将尝试打开PDF文件并在设备上安装的PDF阅读器中显示它。如果没有安装PDF阅读器,将弹出一个提示。