尝试有意分享图片 Android
Trying to share image with intent Android
我正在尝试与社交媒体分享图片。它要求图像的路径,并且我已经从我的对象中以 files.parsetfss.com/77c6003f-0d1b-4b55-b09c-16337b3a2eb8/tfss-7267d2df-9807-4dc0-ad6f-0fd47d83d20f-3eb7b9e4-d770-420c-a0a0-9ca4fc4a6a0a_1.png
的形式检索了图像 URL。显示了共享意图,但是当我打开任何其他应用程序进行共享时,我遇到了没有 logcat 错误的崩溃。可能出了什么问题?
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/*");
share.putExtra(Intent.EXTRA_STREAM, marketFeedItem.getDesign().getImage());
startActivity(Intent.createChooser(share, "Share your design!"));
更新的答案。这是我为让它工作所做的:
ImageView imageView = (ImageView) feedItemView.findViewById(R.id.image);
Drawable mDrawable = imageView.getDrawable();
Bitmap mBitmap = ((BitmapDrawable)mDrawable).getBitmap();
String path = MediaStore.Images.Media.insertImage(getContentResolver(),
mBitmap, "Design", null);
Uri uri = Uri.parse(path);
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/*");
share.putExtra(Intent.EXTRA_STREAM, uri);
share.putExtra(Intent.EXTRA_TEXT, "I found something cool!");
startActivity(Intent.createChooser(share, "Share Your Design!"));
如果 getImage()
返回问题中的长字符串,那不是有效的 URL,因为它缺少方案。
根据 the docs,您需要在 EXTRA_STREAM
extra 中传递一个 content:
Uri
。实际上,file:
Uri
经常也有效。我希望您 运行 遇到其他方案的问题,例如 https:
或 http:
.
也许这有帮助share image with URL android share intent
您的图像文件解析服务器的 URL 对共享意图无效,因此请将加载的位图临时保存在您的设备中,然后使用该保存的位图 URL 共享图像。图片分享后,您可以从您的设备中删除保存的图片
我正在尝试与社交媒体分享图片。它要求图像的路径,并且我已经从我的对象中以 files.parsetfss.com/77c6003f-0d1b-4b55-b09c-16337b3a2eb8/tfss-7267d2df-9807-4dc0-ad6f-0fd47d83d20f-3eb7b9e4-d770-420c-a0a0-9ca4fc4a6a0a_1.png
的形式检索了图像 URL。显示了共享意图,但是当我打开任何其他应用程序进行共享时,我遇到了没有 logcat 错误的崩溃。可能出了什么问题?
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/*");
share.putExtra(Intent.EXTRA_STREAM, marketFeedItem.getDesign().getImage());
startActivity(Intent.createChooser(share, "Share your design!"));
更新的答案。这是我为让它工作所做的:
ImageView imageView = (ImageView) feedItemView.findViewById(R.id.image);
Drawable mDrawable = imageView.getDrawable();
Bitmap mBitmap = ((BitmapDrawable)mDrawable).getBitmap();
String path = MediaStore.Images.Media.insertImage(getContentResolver(),
mBitmap, "Design", null);
Uri uri = Uri.parse(path);
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/*");
share.putExtra(Intent.EXTRA_STREAM, uri);
share.putExtra(Intent.EXTRA_TEXT, "I found something cool!");
startActivity(Intent.createChooser(share, "Share Your Design!"));
如果 getImage()
返回问题中的长字符串,那不是有效的 URL,因为它缺少方案。
根据 the docs,您需要在 EXTRA_STREAM
extra 中传递一个 content:
Uri
。实际上,file:
Uri
经常也有效。我希望您 运行 遇到其他方案的问题,例如 https:
或 http:
.
也许这有帮助share image with URL android share intent
URL 对共享意图无效,因此请将加载的位图临时保存在您的设备中,然后使用该保存的位图 URL 共享图像。图片分享后,您可以从您的设备中删除保存的图片