任何人都可以帮助解释为什么此代码在Geneymotion模拟器中工作,但不在任何实际的Android设备中?代码在模拟器中完美工作,我对它没有任何问题,我完全不知道为什么它在实际设备中不起作用。AndroidStudio将PDF附加到电子邮件问题
这里的方法,该方法被调用时,点击“创建PDF”按钮:
try {
String path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) + "/invoices";
File dir = new File(path);
if(!dir.exists())
dir.mkdirs();
Log.d("PDFCreator", "PDF Path: " + path);
File delete = new File(dir, "invoice.pdf");
if (delete.exists())
delete.delete();
File file = new File(dir, "invoice.pdf");
FileOutputStream fOut = new FileOutputStream(file);
PdfWriter.getInstance(doc, fOut);
//open the document
doc.open();
Log.d("test", "PDF Doccument Opened for input");
在模拟器: - 当我点击“创建PDF”按钮,邮件意图被调用,我可以选择使用电子邮件客户端并通过它发送PDF。
在实际的Android设备中: 当我在实际设备中单击“创建PDF”时,绝对没有任何反应。
我认为问题可能围绕我要存储PDF的目录进行,但我无法解决它。
如果有人能帮助我,将不胜感激。提前致谢。
注意:我使用DroidText库来生成PDF。从实际设备上测试
日志说:
11-05 21:09:14.839 10375-10375/motawaze.com.invoicepdf D/dalvikvm﹕ GC_EXTERNAL_ALLOC freed 93K, 47% free 2913K/5447K, external 0K/0K, paused 30ms
11-05 21:09:25.989 10375-10375/motawaze.com.invoicepdf D/CLIPBOARD﹕ Hide Clipboard dialog at Starting input: finished by someone else... !
11-05 21:09:29.849 10375-10378/motawaze.com.invoicepdf D/dalvikvm﹕ GC_CONCURRENT freed 153K, 47% free 3043K/5639K, external 171K/1281K, paused 7ms+2ms
11-05 21:09:39.899 10375-10378/motawaze.com.invoicepdf D/dalvikvm﹕ GC_CONCURRENT freed 351K, 48% free 3105K/5895K, external 171K/1281K, paused 7ms+3ms
11-05 21:09:53.639 10375-10375/motawaze.com.invoicepdf D/test﹕ set the fields for PDF input
11-05 21:09:53.649 10375-10375/motawaze.com.invoicepdf D/test﹕ set the document
11-05 21:09:53.669 10375-10375/motawaze.com.invoicepdf D/test﹕ set the calender
11-05 21:09:53.669 10375-10375/motawaze.com.invoicepdf D/PDFCreator﹕ PDF Path: /mnt/sdcard/Download/invoices
11-05 21:09:53.669 10375-10375/motawaze.com.invoicepdf E/PDFCreator﹕ ioException:java.io.FileNotFoundException: /mnt/sdcard/Download/invoices/Invoice.pdf (No such file or directory)
11-05 21:10:31.420 10375-10378/motawaze.com.invoicepdf D/dalvikvm﹕ GC_CONCURRENT freed 358K, 48% free 3152K/5959K, external 171K/1281K, paused 7ms+2ms
+0
请在这里发表您的日志。 –
+0
如果代码在模拟器中没有问题,我看不到如何发布日志? –
+0
我只想看看你在这一行中得到了什么:Log.d(“PDFCreator”,“PDF Path:”+ path); –