Criando um MediaPlayer

Vamos criar um projeto na api 23 Android 6(Marshmallow)


Estrutura final do Projeto:

Vamos criar a primeira tela: activity_main

Que ficará assim:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@drawable/note"
    tools:context="coti.com.br.myplaymusic18.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="AppMusica"
        android:fontFamily="sans-serif-condensed"
        android:textSize="28dp"
        android:textColor="#101010"
        />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Alterar Músicas :"
        android:textSize="28dp"
        android:textColor="#0b0b0b"
        android:layout_marginTop="20dp"
        android:gravity="center"
        />

    <Spinner
         android:layout_width="259dp"
         android:layout_height="50dp"
         android:textColor="#8b3737"
         android:id="@+id/spinopcao"
         android:textSize="22dp"
         android:layout_gravity="center"

        >
    </Spinner>

 <LinearLayout
     android:layout_width="match_parent"
     android:layout_height="80dp"
     android:orientation="horizontal"
     android:gravity="center"
     >
<Button
       android:layout_width="100dp"
       android:layout_height="60dp"
       android:text="Play"
       android:onClick="play"
       android:drawableLeft="@drawable/ic_play_arrow_black_24dp"
       android:layout_marginRight="10dp"

    >

</Button>

 <Button
         android:layout_width="100dp"
         android:layout_height="60dp"
         android:text="Stop"
         android:onClick="stop"
         android:drawableLeft="@drawable/ic_stop_black_24dp">

</Button>

     <Button
         android:layout_width="120dp"
         android:layout_height="60dp"
         android:text="Prompt"
         android:onClick="prompt"
         android:drawableLeft="@drawable/ic_chat_black_24dp">

     </Button>

 </LinearLayout>

</LinearLayout>                    

Após fazer a tela ,vamos adicionar as músicas desejadas.

Para isso, adicione-as na pasta raw dentro de res

Vamos adicionar uma imagem no fundo do nosso aplicativo

Para isso vá em res ,depois em drawable e cole a imagem desejada

Já adicionamos a imagem na pasta, agora vamos adicioná-la no aplicativo

Para isso adicione-a no background da nossa tela: MainActivity

Para adicionar icons:

Clique em drawable com o botão direito ,depois em new e então em vector asset

Clique no icone do android em Clip Art.

Escolha o ícone desejado.

Clique em OK

Clique em Next

Nessa Janela poderá ver o caminho onde o ícone será salvo.

Clique em Finish

Agora vamos programar nossa classe: MainActivity

Que ficará desse jeito:

package coti.com.br.myplaymusic18;

import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.media.MediaPlayer;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;

public class MainActivity extends AppCompatActivity {

    private static final String []listamusicas={"Pula  Pula","Rocky","Marcha Imperial"};

    ArrayAdapter<String> adapterLista;
    Spinner spinopcao;
    MediaPlayer mp;

    final Context context = this;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //body do Spin
        spinopcao = (Spinner) findViewById(R.id.spinopcao);  //Faltou

        mp = new MediaPlayer();
        adapterLista = new ArrayAdapter<String>(this,
              android.R.layout.simple_spinner_item, listamusicas);
        spinopcao.setAdapter(adapterLista);
    }

    public void play(View v){
         String msg = "";
         String mus = "";
        try{
          switch(spinopcao.getSelectedItemPosition()){
              case 0 : mus = "Pula Pula";
              if (mp.isPlaying()){
                  mp.stop();
              }
               mp = MediaPlayer.create(MainActivity.this, R.raw.tcham);
               mp.start();
               break;

              case 1 : mus = "Rocky";
                  if (mp.isPlaying()){
                      mp.stop();
                  }
                  mp = MediaPlayer.create(MainActivity.this, R.raw.rockybalboa);
                  mp.start();
               break;

              case 2 : mus = "Marcha Imperial";
                  if (mp.isPlaying()){
                      mp.stop();
                  }
                  mp = MediaPlayer.create(MainActivity.this, R.raw.marchimperial);
                  mp.start();
          }

        }catch(Exception ex){
               Log.i("Error :", ex.getMessage());
        }

        AlertDialog.Builder dialog = new AlertDialog.Builder(MainActivity.this);
        dialog.setTitle("Lista de Musica :");
        dialog.setMessage("Musica Escolhida :" + mus + "*****");
        dialog.setNeutralButton("OK",null);
        dialog.show();
    }

    public void stop(View v){
     try{
        if (mp.isPlaying()){
            mp.stop();
        }

         Intent it = new  Intent(MainActivity.this,MainActivity.class);
         startActivity(it);
         MainActivity.this.finish();

     }catch(Exception ex){
          Log.i("Error :", ex.getMessage());
     }

    }

    public void prompt(View v){

        LayoutInflater li = LayoutInflater.from(context);
         View promptsView = li.inflate(R.layout.layoutprompt, null);


        AlertDialog.Builder  prompt =new AlertDialog.Builder(context);

          prompt.setView(promptsView);

         final EditText loginf = (EditText)  promptsView.findViewById(R.id.txtLogin);
         final EditText senhaf = (EditText)  promptsView.findViewById(R.id.txtSenha);
    }
}
                    

Agora vamos em layoutprompt.xml

Que ficará assim:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:id="@+id/layoutprompt"
    >

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Login"
        android:textSize="18dp"
        />
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/txtLogin"
        android:inputType="text"
        />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Senha"
        android:textSize="18dp"
        />
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/txtSenha"
        android:inputType="textPassword"
        />

</LinearLayout>
                    

Agora vamos rodar o emulador

Escolhendo as musicas...

Clicando no botão Play...