【发布时间】:2016-07-21 14:16:46
【问题描述】:
我正在尝试通过 android 中已安装的 pdf-viewer 打开一个 pdf 文件。
参考链接“android: open a pdf from my app using the built in pdf viewer”
这里是示例代码:
private void openPDF(String filePath)
{
Intent target = new Intent(Intent.ACTION_VIEW);
target.setDataAndType(Uri.parse(filePath),"application/pdf");
target.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
Intent intent = Intent.createChooser(target, "Open File");
if(intent!=null)
{
try {
startActivity(intent); // Here it giving null pointer exception
}
catch (ActivityNotFoundException e) {
// Instruct the user to install a PDF reader here, or something
}
}
else
Log.d("DEBUG","Intent is null");
}
但是我在 startActivity(intent) 行上得到一个空指针异常。
请帮我找出问题。
堆栈跟踪:
01-28 16:24:48.865: W/System.err(4399): java.lang.NullPointerException
01-28 16:24:48.875: W/System.err(4399): at android.app.Activity.startActivityForResult(Activity.java:3370)
01-28 16:24:48.875: W/System.err(4399): at android.app.Activity.startActivityForResult(Activity.java:3331)
01-28 16:24:48.875: W/System.err(4399): at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:819)
01-28 16:24:48.875: W/System.err(4399): at android.app.Activity.startActivity(Activity.java:3566)
01-28 16:24:48.875: W/System.err(4399): at android.app.Activity.startActivity(Activity.java:3534)
01-28 16:24:48.875: W/System.err(4399): at a.MainActivity.openPDF(MainActivity.java:591)
01-28 16:24:48.875: W/System.err(4399): at a.MainActivity.access$0(MainActivity.java:581)
01-28 16:24:48.885: W/System.err(4399): at a.MainActivity$TestSectionFragment$1.onItemClick(MainActivity.java:480)
【问题讨论】: