在进行任何投票之前我必须说我搜索了社区并找到了一些答案,例如Create and Share a File from Internal Storage。但我无法正确理解这个主题的答案。这是我共享mp3文件的代码。但它没有发送它。
这里是代码:
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://" + ringtonepath));
sendIntent.setType("audio/*");
Utils.activity.startActivity(sendIntent);
和ringtoepath's
值为/data/data/mypackagename/files/media/mysharesoundmusic.mp3。当我想使用蓝牙共享此文件时,Toast会显示此消息file mysharesoundmusic.mp3 was not send to devicename
。但是当我去应用程序的媒体文件夹时,我在那里看到文件。在我使用SD卡保存我的文件并使用它之前我可以共享文件并且没有任何问题,但是你知道有些设备没有SD卡,因为我需要在内部存储中存储文件。
感谢。
答案 0 :(得分:2)
我猜你是否正在将该文件发送到另一个应用程序?是这样的吗? 也许您可以使用FileProvider
http://developer.android.com/reference/android/support/v4/content/FileProvider.html