问题描述
我可以保证我的手机中有一个名为 "adobe.pdf" 的 pdf 文件位于 /storage/emulated/0/Documents/adobe.pdf
我通过 URL 链接下载了 pdf 并存储在文档中。这是我下载并存储它的方法。这是同一应用中的另一个活动。
public void DownloadBooks(String url,String title){
DownloadManager.Request request=new DownloadManager.Request(Uri.parse(url));
String tempTitle=title.trim();
request.setTitle(tempTitle);
if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.HONEYCOMB){
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
}
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOCUMENTS,tempTitle+".pdf");
DownloadManager downloadManager=(DownloadManager)getSystemService(Context.DOWNLOAD_SERVICE);
request.setMimeType("application/pdf");
request.allowScanningByMediaScanner();
request.setAllowednetworkTypes(DownloadManager.Request.NETWORK_MOBILE | DownloadManager.Request.NETWORK_WIFI);
downloadManager.enqueue(request);
}
DownloadBooks("a link"," adobe");
下载完成后,pdf adobe.pdf 存储在 /storage/emulated/0/Documents/
,我想查看此下载的 PDF。
package com.shivansh.firebasedemo;
public class DownloadedPDFViewerActivity extends AppCompatActivity implements ViewPager.OnPagechangelistener,OnLoadCompleteListener {
PDFView pdfView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_downloaded_p_d_f);
pdfView =findViewById(R.id.pdfView);
File root = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS);
File file = new File(root,"adobe.pdf");
Log.i("5656",file.toString());
pdfView.fromFile(file).
enableSwipe(true)
.defaultPage(0)
.swipeHorizontal(false)
.onLoad(this)
.load();
}
@Override
public void onPageScrolled(int position,float positionOffset,int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
@Override
public void loadComplete(int nbPages) {
}
}
上面的日志语句打印
2021-05-06 03:13:31.734 9470-9470/com.shivansh.firebasedemo I/5656: /storage/emulated/0/Documents/adobe.pdf
这表明我在设备上找到了文件的正确位置。
现在,我如何使这个 pdf 在我的活动中呈现?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)