簡體   English   中英

Android Studio分享mp3和播放/停止歌曲

[英]Android Studio Share mp3 and play/stop songs

我有以下代碼:

import android.annotation.SuppressLint;
import android.content.Intent;
import android.media.MediaPlayer;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageButton;

public class MainActivity extends AppCompatActivity {
MediaPlayer mp;

//Buttons 
ImageButton peroperoperopero;
ImageButton personajitosdos;
peroperoperopero = (ImageButton) findViewById(R.id.peroperoperopero);
personajitosdos = (ImageButton) findViewById(R.id.personajitosdos);

//code
peroperoperopero.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            mp = MediaPlayer.create(MainActivity.this,R.raw.peroperopero);
            mp.start();
        }
    });

peroperoperopero.setOnLongClickListener(new View.OnLongClickListener() {
        @Override
        public boolean onLongClick(View v) {
            Intent compartirAudio = new Intent(android.content.Intent.ACTION_SEND);
            compartirAudio.setType("audio/*");
            compartirAudio.putExtra(Intent.EXTRA_STREAM,
                    Uri.parse("android.resource://" + getApplicationContext().getPackageName() + "/raw/" + R.raw.peroperopero));
            startActivity(Intent.createChooser(compartirAudio, "Compartir vía"));
            return false;
        }
    });

personajitosdos.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            mp = MediaPlayer.create(MainActivity.this,R.raw.unospersonajitos);
            mp.start();
        }
    });

}

}

我需要知道修改為:

  • 按下按鈕peroperoperopero在WhatsApp中共享它(當前,當我共享它時,發送文檔但不發送音頻)

  • 我現在只希望同時播放一種聲音,現在,如果我同時在兩個按鈕之前放在一起,聲音就會疊加在一起。

  • 我還希望聲音正在播放,如果再次按下按鈕,它會停止。

請告訴我我必須更改代碼什么? 非常感謝你。

對於音頻播放和停止,請使用以下命令:

  MediaPlayer mp;
  mp = MediaPlayer.create(context, R.raw.sound_one);
  mp.setOnCompletionListener(new OnCompletionListener() {
    @Override
    public void onCompletion(MediaPlayer mp) {
    // TODO Auto-generated method stub
    mp.reset();
    mp.release();
    mp=null;
   }
  });
  mp.start();

要與應用程序共享音頻,您可以轉到以下鏈接共享音頻文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM