Radio Player Android Tutorial

Di artikel sebelumnya tentang Media Player Video Android Tutorial, kita telah membuat aplikasi pemutar musik dan video di dalam aplikasi android. Dan kali ini kita akan mencoba membuat aplikasi pemutar radio di android. Berikut cara membuatnya.

Radio Player Android Tutorial

Tidak terlalu berbeda dengan tutorial kemarin, kali ini kita akan memutar radio di dalam aplikasi android. Untuk memutar radio di android kita bisa memasukkan langsung alamat radio atau mencari alamat radio secara manual. Di aplikasi yang akan kita buat, kita terlebih dahulu harus memasukkan alamat radio yang ingin kita putar ke dalam kode java android. Untuk lebih jelasnya mari ikuti langkah-langkah berikut ini

Pertama buat project baru dengan nama radio, dan untuk package beri nama blogsetyaaji.com. Jika sudah, buka activity_main.xml dan buat kodenya seperti berikut ini :

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.blogsetyaaji.radio.MainActivity">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="URL Radio"
android:id="@+id/textUrlRadio" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Play"
android:id="@+id/btnPlay"
android:layout_below="@id/textUrlRadio"
android:layout_marginTop="82dp"/>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Stop"
android:id="@+id/btnStop"
android:layout_toRightOf="@id/btnPlay"
android:layout_alignTop="@id/btnPlay"/>

<ProgressBar
android:layout_width="50dp"
android:layout_height="wrap_content"
style="?android:attr/progressBarStyleHorizontal"
android:id="@+id/progresBar"
android:layout_above="@id/btnStop"/>
</RelativeLayout>

Pindah ke MainActivity.java, buat kodenya seperti berikut ini :

package com.blogsetyaaji.radio;

import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;
import android.widget.TextView;

import java.io.IOException;

public class MainActivity extends AppCompatActivity implements View.OnClickListener{

private String url_radio = "http://162.243.130.87";
private ProgressBar playSeekBar;
private TextView tvRadioUrl;
private Button buttonPlay;
private Button buttonStop;
private MediaPlayer player;

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

private void initializeMediaPlayer() {
player = new MediaPlayer();
try {
player.setDataSource(url_radio);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

player.setOnBufferingUpdateListener(new MediaPlayer.OnBufferingUpdateListener() {
@Override
public void onBufferingUpdate(MediaPlayer mp, int percent) {
playSeekBar.setIndeterminate(false);
playSeekBar.setSecondaryProgress(100);
Log.i("Buffering", "" + percent);
}
});

}

private void initializeUIElements() {
playSeekBar = (ProgressBar) findViewById(R.id.progresBar);
playSeekBar.setMax(100);
playSeekBar.setVisibility(View.INVISIBLE);
playSeekBar.setIndeterminate(true);

buttonPlay = (Button) findViewById(R.id.btnPlay);
buttonPlay.setOnClickListener(this);

buttonStop = (Button) findViewById(R.id.btnStop);
buttonStop.setEnabled(false);
buttonStop.setOnClickListener(this);

tvRadioUrl = (TextView) findViewById(R.id.textUrlRadio);
tvRadioUrl.setText("Radio url : " + url_radio);

}

@Override
public void onClick(View v) {
if (v == buttonPlay) {
startPlaying();
} else if (v == buttonStop) {
stopPlaying();
}

}

private void stopPlaying() {
if (player == null) return;
try{
if (player.isPlaying()) {
player.stop();
player.release();
initializeMediaPlayer();
}
} catch (IllegalStateException e) {

}
buttonPlay.setEnabled(true);
buttonStop.setEnabled(false);
playSeekBar.setIndeterminate(true);
playSeekBar.setVisibility(View.INVISIBLE);
}

private void startPlaying() {
buttonStop.setEnabled(true);
buttonPlay.setEnabled(false);
playSeekBar.setVisibility(View.VISIBLE);
player.prepareAsync();
player.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
player.start();
}
});
}
}

Selanjutnya pergi ke folder Manifest dan buka AndroidManifest.xml dan tambahkan kode ini di atas kode <android> seperti berikut ini

<uses-permission android:name="android.permission.INTERNET" />

Jika sudah, silahkan jalankan aplikasinya dan tampilanya akan seperti berikut ini

Radio Player Android Tutorial

Jangan lupa hidupkan data paket atau internet sobat karena aplikasi ini membutuhkan akses internet untuk memutar radio dari alamat radio yang telah dimasukkan ke dalam aplikasi. Dan silahkan sobat kembangkan sendiri karena aplikasi ini masih sederhana.

Sekian tutorial Radio Player Android semoga bermanfaat. Sampai jumpa di artikel selanjutnya 

Tidak ada komentar

Diberdayakan oleh Blogger.