我正在更新公司应用程序的代码,大约有 20 个活动类都下载 PDF,然后使用以下代码显示它:
public void showPdf()
{
File file = new File(Environment.getExternalStorageDirectory()+"/pdf/Read.pdf");
PackageManager packageManager = getPackageManager();
Intent testIntent = new Intent(Intent.ACTION_VIEW);
testIntent.setType("application/pdf");
List list = packageManager.queryIntentActivities(testIntent, PackageManager.MATCH_DEFAULT_ONLY);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
Uri uri = Uri.fromFile(file);
intent.setDataAndType(uri, "application/pdf");
startActivity(intent);
}
代码正在运行,但是它已在所有 20 个类中复制(对我来说似乎很糟糕),我想将它放入每个活动类导入的单个类中,但是当我尝试执行此操作时,类似getPackageManager()
并startActivity(intent)
没有更长的工作。
我该如何组织我的课程以实现这一目标?还是我以错误的方式解决这个问题。