Android 不支持意向图像共享文件格式
我无法在社交媒体上共享该图像 当我点击共享按钮时。 它显示了Android 不支持意向图像共享文件格式,android,android-intent,android-intent-chooser,Android,Android Intent,Android Intent Chooser,我无法在社交媒体上共享该图像 当我点击共享按钮时。 它显示了Toast 不支持文件格式 我将图像存储到firebase。 现在我从firebase获得链接并解析为URI,但我不知道为什么会出现这种情况 我硬编码URL只是为了测试 WhatsApp: 不支持文件格式 对于Instagram: 无法加载图像 对于Facebook: 显示nothing表示没有祝酒词或其他内容(仅显示状态栏) 对于Messenger: 未打开 引用,EXTRA\u-STREAM应该指向“一个内容:URI,其中包含一个与
Toast
不支持文件格式
我将图像存储到firebase
。
现在我从firebase获得链接并解析为URI,但我不知道为什么会出现这种情况
我硬编码URL只是为了测试
WhatsApp:
不支持文件格式
对于Instagram:
无法加载图像
对于Facebook:
显示nothing表示没有祝酒词或其他内容(仅显示状态栏)
对于Messenger:
未打开
引用,EXTRA\u-STREAM
应该指向“一个内容:
URI,其中包含一个与意图
关联的数据流,与操作发送
一起使用,以提供所发送的数据。”
您正在提供一个https
Uri
,其他应用程序将不需要它。无论如何,并非所有支持操作\u SEND
的应用程序都具有互联网
权限
如果要共享某些内容,通常需要在设备上本地,并通过FileProvider
或其他形式的ContentProvider
进行共享。在安卓7.0之前,指向上的文件的方案通常也能起作用
public void onBindViewHolder(final ViewHolder holder, int position) {
upload = uploads.get(position);
holder.textViewName.setText(upload.getName());
final String imageUrl=upload.getUrl();
Glide.with(context).load(imageUrl).into(holder.imageView);
final Uri imageUri=Uri.parse("https://firebasestorage.googleapis.com/v0/b/memories-project.appspot.com/o/uploads%2FnCfBZThQykf3Ur9oNzHyEHS1DEp2%2F45007?alt=media&token=9ae17594-13ff-40f6-98f9-aff80ab2fdf4");
holder.shareImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(context,imageUrl,Toast.LENGTH_SHORT).show();
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("image/*");
shareIntent.putExtra(Intent.EXTRA_STREAM,imageUri);
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
try {
context.startActivity(Intent.createChooser(shareIntent, "Share image File"));
} catch (android.content.ActivityNotFoundException ex) {
}
}
});
}