目前我正在开发一个应用程序,它将图像从r.drawable
发送到电子邮件作为附件,我已经上传了我的应用程序的代码,它在模拟器中强制关闭,logcat显示nullpointerexception。请帮助我解决这个问题。
我已将图像(jpeg)更改为位图,并将其转换为字节数组,并且,此字节数组在logcat中显示nullpointerexception,我也尝试在行{中给出100或10,0000而不是0 {1}}。仍然我的应用程序强行关闭。在log cat中显示相同的错误。希望有一个解决方案。提前谢谢。
myLogo.compress(CompressFormat.JPEG,0, bos)
答案 0 :(得分:0)
您可以直接将图像附加到可绘制的图像中,
in.putExtra(Intent.EXTRA_STREAM, Uri.parse("android.resource://your.package.name/" + R.drawable.aish));
答案 1 :(得分:0)
您正在附加null
(无)。
见这里
in.putExtra(Intent.EXTRA_STREAM,bos.toByteArray());
您正在附加bos.toByteArray
,而bos
是ByteArrayOutputStream
。
所以基本上你附加了bytearray
而不是image
。
试试这个:
File jpegfile = new File(imageDir, "yourfilename.jpeg");
Uri jpegurl = Uri.fromFile(jpegfile);
in.putExtra(Intent.EXTRA_STREAM, jpegurl);