您好,我正在尝试让我的 Android 应用程序将应用程序制作的图像发布到 facebook、twitter 或 instagram。我从别人那里复制了一个确切的例子,但它仍然不起作用。
public void ShareToSocialMedia(String application) {
Bitmap b =BitmapFactory.decodeResource(getResources(),
R.mipmap.ic_launcher);
Intent share = new Intent(Intent.ACTION_SEND);
share.setPackage(application);
share.setType("image/jpeg");
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
String path = MediaStore.Images.Media.insertImage(getContentResolver(),
b, "Title", null);
Uri imageUri = Uri.parse(path);
share.putExtra(Intent.EXTRA_STREAM, imageUri);
startActivity(Intent.createChooser(share, "Select"));
}
我在行中遇到错误
Uri imageUri = Uri.parse(path);
我也不知道为什么。有人可以告诉我如何解决这个问题吗?
最佳答案
如果您查看 Uri.parse
的文档,您会看到如果传递的 uriString
为 null
,它会抛出一个 NullPointerException
。
然后查看 MediaStore.Images.Media.insertImage
您依赖于获取 uriString
的方法,文档指出,如果由于任何原因无法存储图像,它会返回 null
。
现在,至于原因是什么,你的猜测和我的一样好,但是 search on Stackoverflow确实表明有人遇到了类似的问题。
关于java - FATAL EXCEPTION : main java. lang.NullPointerException: uriString while trying to share image to social media intent 安卓,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31601015/