android如何使可访问的数据文件夹内容到其他应用程序

时间:2012-07-19 05:39:47

标签: android android-contentprovider

我想使用pdf viewer应用程序打开保存在应用程序数据文件夹中的pdf文件。如何将可访问的数据文件夹内容提供给其他应用程序。一些代码片段对我有帮助。

Intent intent = new Intent(Intent.ACTION_VIEW);
                 intent.setDataAndType( Uri.parse("content://" + pdf_path), "application/pdf" );
                 startActivity(intent);

2 个答案:

答案 0 :(得分:2)

File file = new File(“/sdcard/read.pdf”);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file),”application/pdf”);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);

您可以通过此方式从外部存储器访问pdf文件。请确保您提供正确的路径。

答案 1 :(得分:0)

首先确保您的.pdf文件有MODE_WORLD_READABLE许可,

现在,从应用程序数据文件夹访问.pdf文件意味着/data/data/<package_Name>/

使用,getFilesDir()返回应用程序数据目录的路径,

然后,

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(new File(getFilesDir()+ "pdf_path")),"application/pdf" );
startActivity(intent);