我正在构建一个必须打印文件的应用。我想使用谷歌云打印,但它一直说文件丢失。
该应用使用iText创建pdf。这部分有效,Adobe读者可以在我的手机上显示它。然后我运行这个:
public static final String FILE_URI = Environment.getExternalStorageDirectory().getPath() + "/pdfFile.pdf";
Uri uri = Uri.parse(FILE_URI);
Intent printIntent = new Intent(MainActivity.this, PrintDialogActivity.class);
printIntent.setDataAndType(uri, "pdf");
printIntent.putExtra("title", "pdfFile");
startActivity(printIntent);
它会启动打印活动,您可以登录到您的Google帐户,但是当您按下打印时,它会显示文档丢失。谁知道什么是错的?
答案 0 :(得分:1)
而不是使用以下内容:
Uri uri = Uri.parse(FILE_URI);
和
printIntent.setDataAndType(uri, "pdf");
使用:
Uri uri = Uri.fromFile(new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/output.pdf"));
和
printIntent.setDataAndType(uri, "application/pdf");
它有效:)