返回顶部
首页 > 资讯 > 移动开发 >Android 打开网络上pdf文件
  • 903
分享到

Android 打开网络上pdf文件

pdfAndroid 2022-06-06 01:06:25 903人浏览 八月长安
摘要

之前写过一篇Android打开本地pdf文件的文章,最后总结的时候说,后面一定要拓展库,让其也能打开网络的的pdf文件。今天终于可以兑现承诺了。frok一份代码https://

之前写过一篇Android打开本地pdf文件的文章,最后总结的时候说,后面一定要拓展库,让其也能打开网络的的pdf文件。今天终于可以兑现承诺了。frok一份代码https://GitHub.com/JoanZapata/android-pdfview,源码地址:Http://xiazai.jb51.net/201704/yuanma/android-pdfview-master_jb51.rar,开始改造一番。

1.基本思路:

打开网络pdf 思路整体还是来源与图片的加载。

android中加载网络图片的框架有很多个。如image-laoder, fresco、glide等,首先都是从内存中找图片,如果内存中没有,接着从本地找,本地没有在从网络下载。

android中加载pdf也是类似,首先从本地找pdf文件,如果本地存在该pdf文件,直接打开,如果本地不存在,将该pdf文件下载到本地在打开。

下载文件用到了retrofit2的库,已经封装到android_pdf中了。

2.依赖android_pdf库方法

2.1 在项目的gradle中增加如下代码:

compile 'com.lidong.pdf:android_pdf:1.0.1'

2.2 一句代码就可以加载网络pdf。

pdfView.fileFromLocalStorage(this,this,this,fileUrl,fileName);   //设置pdf文件地址

2.3对fileFromLocalStorage(this,this,this,fileUrl,fileName)的解析



 public void fileFromLocalStorage(
 final OnPageChangeListener onPageChangeListener,
     final OnLoadCompleteListener onLoadCompleteListener,
     final OnDrawListener onDrawListener,
     String fileUrl,
     final String fileName)
OnPageChangeListener onPageChangeListener :翻页回调 OnLoadCompleteListener onLoadCompleteListener:加载完成的回调 OnDrawListener:页面绘制的回调 String fileUrl : 文件的网络地址 String fileName 文件名称

3.使用android_pdf库方法

3.1写一个布局文件


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:id="@+id/activity_main"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
tools:context="com.lidong.pdf.androidpdf.MainActivity">
 <com.lidong.pdf.PDFView
 android:id="@+id/pdfView"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 />
</RelativeLayout>

3.2在MainActivity中加载


import android.graphics.canvas;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
import com.lidong.pdf.PDFView;
import com.lidong.pdf.api.ApiManager;
import com.lidong.pdf.listener.OnDrawListener;
import com.lidong.pdf.listener.OnLoadCompleteListener;
import com.lidong.pdf.listener.OnPageChangeListener;
import com.lidong.pdf.util.FileUtils;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import okhttp3.ResponseBody;
import rx.android.schedulers.AndroidSchedulers;
import rx.functions.Action1;
import rx.schedulers.Schedulers;
public class MainActivity extends AppCompatActivity implements OnPageChangeListener
 ,OnLoadCompleteListener, OnDrawListener {
 private PDFView pdfView ;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 pdfView = (PDFView) findViewById( R.id.pdfView );
 displayFromFile1("填写所要打开的pdf地址");
 }
 
 private void displayFromFile1( String fileUrl ,String fileName) {
 showProgress(); pdfView.fileFromLocalStorage(this,this,this,fileUrl,fileName); //设置pdf文件地址
 }
 
 @Override
 public void onPageChanged(int page, int pageCount) {
 Toast.makeText( MainActivity.this , "page= " + page +
 " pageCount= " + pageCount , Toast.LENGTH_SHORT).show();
 }
 
 @Override
 public void loadComplete(int nbPages) {
 Toast.makeText( MainActivity.this , "加载完成" + nbPages , Toast.LENGTH_SHORT).show();
 hideProgress();
 }
 @Override
 public void onLayerDrawn(Canvas canvas, float pageWidth, float pageHeight, int displayedPage) {
 // Toast.makeText( MainActivity.this , "pageWidth= " + pageWidth + "
 // pageHeight= " + pageHeight + " displayedPage=" + displayedPage , Toast.LENGTH_SHORT).show();
 }
 
 private void showProgress(){
 LoadingUIHelper.showDialogForLoading(this,"报告加载中,请等待。。。",false);
 }
 
 private void hideProgress(){
 LoadingUIHelper.hideDialogForLoading();
 }

代码地址

效果实现:

您可能感兴趣的文章:Android 打开本地pdf文件Android pdf viewer在android studio应用问题说明详解Android 下载并打开PDF,Doc,Dwg文档实例


--结束END--

本文标题: Android 打开网络上pdf文件

本文链接: https://lsjlt.com/news/21854.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Android 打开网络上pdf文件
    之前写过一篇Android打开本地pdf文件的文章,最后总结的时候说,后面一定要拓展库,让其也能打开网络的的pdf文件。今天终于可以兑现承诺了。frok一份代码https://...
    99+
    2022-06-06
    pdf Android
  • Android 打开本地pdf文件
    Android 中打开pdf文件也是一种很常见的场景,但是上网找了好多资料,有用WebView加载的,但是要用vpn才能搞,最后发现一个库挺不错的,再次分享给大家 androi...
    99+
    2022-06-06
    pdf Android
  • pdf文件如何打开
    这篇文章主要介绍“pdf文件如何打开”,在日常操作中,相信很多人在pdf文件如何打开问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”pdf文件如何打开”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!首先右击你...
    99+
    2023-07-02
  • win11如何打开pdf文件
    本文小编为大家详细介绍“win11如何打开pdf文件”,内容详细,步骤清晰,细节处理妥当,希望这篇“win11如何打开pdf文件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。首先,右键我们的pdf文件,选择“打开...
    99+
    2023-07-02
  • 本地pdf文件如何在Android应用中打开
    本地pdf文件如何在Android应用中打开?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1.下载android-pdfview库2. android-pdfview的简单...
    99+
    2023-05-31
    android pdf roi
  • win10怎么打开网络共享文件夹
    要在Windows 10中打开网络共享文件夹,可以按照以下步骤操作: 确保您的计算机已经连接到局域网,并且您有访问共享文件夹的权...
    99+
    2023-10-26
    win10
  • 小程序中打开pdf文件(wx.downloadFile+wx.openDocument)
    用 wx.downloadFile({}) 下载,然后 用 wx.openDocument({}) 打开文件 先请求到 pdf 路径网络地址,将 pdf 下载到本地 从本地文件上传到一个临时路径中,将本地文件删除 打开临时路径的文件 注意:...
    99+
    2023-09-15
    pdf 微信小程序 小程序
  • Android 下载并打开PDF,Doc,Dwg文档实例
    今天项目中遇到这样一个需求 ,根据后台接口里pdf,doc,dwg文档的地址 是一个URL ,需要根据文档的url 下载到本地(内部存储或内存卡)并用手机中能打开该文档的软件弹...
    99+
    2022-06-06
    doc pdf Android
  • Android 应用内打开Word、Excel、PPT、PDF等文档
    Android平台中,可以使用以下几种方式打开Word和Excel文档: 预览图: 一:直接上传给第三方之后用webview打开         1、微软:         https://view.officeapps.live.c...
    99+
    2023-09-01
    android word excel
  • Android 生成pdf文件
    Android 生成pdf文件 1.使用官方的方式 使用官方的方式也就是PdfDocument类的使用 1.1 基本使用   @RequiresApi(api = Build.VERSION_CODES.KITKAT)   priv...
    99+
    2023-09-08
    android pdf gitee
  • PDF、Doc与Dwg格式的文件怎么在Android 应用中打开
    本篇文章为大家展示了PDF、Doc与Dwg格式的文件怎么在Android 应用中打开,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。代码:这是一个单独的类 首先接收intent传过来的url我是用ur...
    99+
    2023-05-31
    android pdf doc
  • win11打开pdf文件出现bug如何解决
    这篇文章主要讲解了“win11打开pdf文件出现bug如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win11打开pdf文件出现bug如何解决”吧!win11打开pdf文件出现bug...
    99+
    2023-07-01
  • android打开rar压缩文件
    代码如下:private void open(String fileString) { Intent intent = new Intent(); int...
    99+
    2022-06-06
    rar Android
  • android项目中在webview中打开pdf
    android项目中在webview中打开pdf。 关于android打开pdf文件方法有多种,下面的文章有详细说明: Android 实现 PDF 文件阅读功能调研 Andr...
    99+
    2022-06-06
    pdf webview Android
  • 如何使用 golang 在网络打印机上打印文件或格式化文本
    学习Golang要努力,但是不要急!今天的这篇文章《如何使用 golang 在网络打印机上打印文件或格式化文本》将会介绍到等等知识点,如果你想深入学习Golang,可以关注我!我会持续更新相关文章的...
    99+
    2024-04-05
  • php如何上传pdf文件
    这篇文章主要介绍“php如何上传pdf文件”,在日常操作中,相信很多人在php如何上传pdf文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php如何上传pdf文件”的疑惑...
    99+
    2024-04-02
  • Winform窗体中打开PDF文件的三种方式
    1、使用Adobe PDF Reader控件。 从COM组件库中找到Adobe PDF Reader控件,添加到工具箱中。 从工具箱中拖入PDF Reader控件。 可以看到VS...
    99+
    2024-04-02
  • 通过Blob流在浏览器中打开pdf文件
    ** 通过Blob流在浏览器中打开pdf文件 ** const url = `/eehds/epidemic/printtaskId=${this.taskId}&isPrint=true` a...
    99+
    2023-08-31
    javascript 前端 html
  • ie浏览器打不开pdf文件如何解决
    这篇文章主要介绍“ie浏览器打不开pdf文件如何解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“ie浏览器打不开pdf文件如何解决”文章能帮助大家解决问题。ie浏览器打不开pdf文件解决方法:首先...
    99+
    2023-07-02
  • Android之WebView加载PDF链接预览PDF文件
    文章目录 前言一、效果图二、实现步骤1.在项目main目录下新建一个assets2.新建一个js为index.js3.新建一个HTML为index.html4.xml布局4.Activity类...
    99+
    2023-09-01
    WebView加载PDF Android加载PDF pdf预览 webview加载PDF链接 Android webview
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作