我正在构建一个必须打印文件的应用程序。我想使用 Google 云打印,但它一直说文件丢失。
该应用程序使用 iText 创建一个 pdf。这部分有效,Adobe reader 可以在我的手机上显示它。然后我运行这个:
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);
它启动了打印 Activity ,您可以登录到您的谷歌帐户,但是当您按下打印时,它说文件丢失。有谁知道怎么回事吗?
最佳答案
而不是使用以下内容:
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");
有效:)
关于java - Google 云打印报告文件丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18451137/