繁体   English   中英

试图有目的地共享mp3,但文件扩展名不包括在内

[英]Trying to share an mp3 with an intent but the file extension isn't included

Uri clipUri = Uri.parse("android.resource://com.packagename.community/raw/" + rawname);
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, clipUri);
shareIntent.setType("audio/mpeg");
startActivity(Intent.createChooser(shareIntent, getResources().getText(R.string.send_to)));

这段代码几乎可以正常工作,我可以将剪辑成功发送到另一个应用程序(例如,dropbox),并且除了没有.mp3扩展名之外,文件一切正常。

欢迎来到StackOverflow! StackOverflow用于编程问题,这不是问题。

我将把您的非问题解释为:

为什么当我使用没有文件扩展名的Uri ,文件扩展名精灵没有神奇地添加文件扩展名?

这是因为Android缺少文件扩展名精灵。

如果要在Uri具有文件扩展名,则需要在其中放置一个文件扩展名。 并且,由于没有我知道的语法会给android.resource:// Uri提供文件扩展名,因此您可以选择:

  1. 共享文件而不是资源

  2. 创建一个ContentProvider来通过openFile服务资源,以响应某些确实具有所需文件扩展名的Uri

  3. 没有文件扩展名的Live

  4. 不分享资源

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM