我正在尝试使用按钮共享音频文件,但是当我单击它时,应用程序会显示消息“不支持文件格式”。我怎么解决这个问题?这是我的代码
Button buonaseeera=(Button) findViewById(R.id.pulsantebuonaseeera);
buonaseeera.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
audiobuonaseeera=MediaPlayer.create(getApplicationContext(), R.raw.buonaseeeraaudio);
audiobuonaseeera.start();
Button sharebutton=(Button) findViewById(R.id.sharebutton);
sharebutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String sharePath =
Environment.getExternalStorageDirectory().getPath()
+ "raw2sd";
Uri uri = Uri.parse(sharePath);
Intent share = new Intent(Intent.ACTION_SEND);
share.setType("audio/*");
share.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(Intent.createChooser(share, "Share Audio
File"));
答案 0 :(得分:1)
试试这个例子:
public class MusicPlayerActivity extends AppCompatActivity {
Activity mactivity;
private Button btn_shareaudio;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_music_player);
mactivity = this;
btn_shareaudio = (Button) findViewById(R.id.btn_activity_music_player_shareaudio);
btn_shareaudio.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
File f = new File(/*Path of the song*/);
Uri uri = Uri.parse("file://" + f.getAbsolutePath());
Intent share = new Intent(Intent.ACTION_SEND);
share.putExtra(Intent.EXTRA_STREAM, uri);
share.setType("audio/*");
share.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
mactivity.startActivity(Intent.createChooser(share, "Share audio File"));
Toast.makeText(getApplicationContext(), "Song Shared Successfully", Toast.LENGTH_SHORT).show();
}
});
}