Tugas Android Studio Pemutar Musik
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout 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:background="#fff" tools:context="com.musik.MainActivity"> <ImageView android:id="@+id/gambar" android:layout_width="match_parent" android:layout_height="550dp" android:layout_alignParentTop="true" android:layout_marginTop="53dp" app:srcCompat="@drawable/digitalmusic" tools:ignore="ContentDescription" /> <Button android:id="@+id/play" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginBottom="16dp" android:layout_marginLeft="16dp" android:layout_marginStart="16dp" android:text="Play" tools:ignore="HardcodedText" /> <Button android:id="@+id/pause" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/play" android:layout_centerHorizontal="true" android:layout_marginBottom="16dp" android:text="Pause" tools:ignore="HardcodedText" /> <Button android:id="@+id/stop" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" android:layout_alignParentRight="true" android:layout_alignTop="@+id/pause" android:layout_marginBottom="16dp" android:layout_marginEnd="16dp" android:layout_marginRight="16dp" android:text="Stop" tools:ignore="HardcodedText" /> </RelativeLayout>
MainActivity.java
package com.musik; import android.media.MediaPlayer; import android.os.Bundle; import android.view.View; import android.widget.Button; import androidx.appcompat.app.AppCompatActivity; import java.io.IOException; public class MainActivity extends AppCompatActivity implements View.OnClickListener{ //Deklarasi Variable private Button Play, Pause, Stop; private MediaPlayer mediaPlayer; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Inisialisasi Button Play = findViewById(R.id.play); Pause = findViewById(R.id.pause); Stop = findViewById(R.id.stop); //Menambahkan Listener pada Button Play.setOnClickListener(this); Pause.setOnClickListener(this); Stop.setOnClickListener(this); stateAwal(); } //Untuk menentukan kondisi saat aplikasi pertama kali berjalan private void stateAwal(){ Play.setEnabled(true); Pause.setEnabled(false); Stop.setEnabled(false); } //Method untuk memainkan musik private void playAudio(){ //Menentukan resource audio yang akan dijalankan mediaPlayer = MediaPlayer.create(this, R.raw.alan); //Kondisi Button setelah tombol play di klik Play.setEnabled(false); Pause.setEnabled(true); Stop.setEnabled(true); //Menjalankan Audio / Musik try{ mediaPlayer.prepare(); }catch (IllegalStateException ex){ ex.printStackTrace(); }catch (IOException ex1){ ex1.printStackTrace(); } mediaPlayer.start(); //Setelah audio selesai dimainkan maka kondisi Button akan kembali seperti awal mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { stateAwal(); } }); } //Method untuk mengentikan musik private void pauseAudio(){ //Jika audio sedang dimainkan, maka audio dapat di pause if(mediaPlayer.isPlaying()){ if(mediaPlayer != null){ mediaPlayer.pause(); Pause.setText("Lanjutkan"); } }else { //Jika audio sedang di pause, maka audio dapat dilanjutkan kembali if(mediaPlayer != null){ mediaPlayer.start(); Pause.setText("Pause"); } } } //Method untuk mengakhiri musik private void stopAudio(){ mediaPlayer.stop(); try { //Menyetel audio ke status awal mediaPlayer.prepare(); mediaPlayer.seekTo(0); }catch (Throwable t){ t.printStackTrace(); } stateAwal(); } @Override public void onClick(View v) { switch (v.getId()){ case R.id.play: playAudio(); break; case R.id.pause: pauseAudio(); break; case R.id.stop: stopAudio(); break; } } }
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.musik"> <uses-permission android:name="android.permission.WAKE_LOCK" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="My Music" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>

Tidak ada komentar:
Posting Komentar