用intent打开一个pdf文件,调用过程如下;
String pdffilename = "/sdcard/yaohao/1361845836352.pdf";
File file = new File(pdffilename);
Uri uri = Uri.fromFile(file);
try {
Intent intent =new Intent(Intent.ACTION_VIEW);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setDataAndType(uri,"application/pdf");
startActivity(intent);
} catch (Exception e) {
e.printStackTrace();
}
如果手机上安装了adobe reader或者其它可以打开pdf的文件,那么会自动调用该应用打开文件。
如果没有安装相应软件,抛出异常,通过检测到该异常来判断是否安装有相应程序。
还有一种方法,使用
packageManager.queryIntentActivities(intent, flags)
来列出所有可以打开的文件,如果返回列表为空则表明没有相应程序被安装