Advertisement
Guest User

Untitled

a guest
Jun 19th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.31 KB | None | 0 0
  1. package com.example.bpear.echoradio;
  2.  
  3. import android.content.Intent;
  4. import android.media.AudioManager;
  5. import android.media.MediaPlayer;
  6. import android.os.AsyncTask;
  7. import android.os.Bundle;
  8. import android.support.annotation.NonNull;
  9. import android.support.design.widget.BottomNavigationView;
  10. import android.support.v7.app.AppCompatActivity;
  11. import android.support.v7.widget.Toolbar;
  12. import android.view.MenuItem;
  13. import android.view.View;
  14. import android.widget.ImageView;
  15.  
  16. import java.io.IOException;
  17.  
  18. public class MainActivity extends AppCompatActivity {
  19.  
  20.  
  21.         private Toolbar radiotoolbar;
  22.         ImageView b_play1;
  23.         MediaPlayer mediaPlayer;
  24.         boolean prepared;
  25.         String stream = "http://bbcmedia.ic.llnwd.net/stream/bbcmedia_radio1_mf_p";
  26.         private boolean started;
  27.  
  28.         @Override
  29.         protected void onCreate (Bundle savedInstanceState){
  30.             super.onCreate(savedInstanceState);
  31.             setContentView(R.layout.activity_main);
  32.  
  33.             radiotoolbar = findViewById(R.id.Radio_toolbar);
  34.             radiotoolbar.setTitle("Live Stream");
  35.  
  36.             b_play1 = findViewById(R.id.buttonPlay);
  37.            // b_play1.setEnabled(false);
  38.  
  39.             mediaPlayer = new MediaPlayer();
  40.             mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
  41.             mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener()
  42.             {
  43.                 public void onPrepared (MediaPlayer mediaPlayer){
  44.                     System.out.print("VideoPrepared");
  45.                     mediaPlayer.start();
  46.                 }
  47.             });
  48.  
  49.             b_play1.setOnClickListener(new View.OnClickListener() {
  50.                 @Override
  51.                 public void onClick(View view) {
  52.                     System.out.print("clicked");
  53.                     if (started) {
  54.                         started = false;
  55.                     //    mediaPlayer.pause();
  56.                     } else {
  57.                         started = true;
  58.                     //   mediaPlayer.start();
  59.                         System.out.print("VideoStartPreparing");
  60.                         new PlayerTask().execute(stream);
  61.  
  62.  
  63.                     }
  64.                 }
  65.             });
  66.  
  67.             BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
  68.             navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);
  69.         }
  70.  
  71.         @Override
  72.         protected void onPause () {
  73.             super.onPause();
  74.             if (started) {
  75.                 mediaPlayer.pause();
  76.             }
  77.         }
  78.  
  79.         @Override
  80.         protected void onResume () {
  81.             super.onResume();
  82.             if (started) {
  83.                 mediaPlayer.start();
  84.             }
  85.         }
  86.  
  87.         @Override
  88.         protected void onDestroy () {
  89.             super.onDestroy();
  90.             if (prepared) {
  91.                 mediaPlayer.release();
  92.             }
  93.         }
  94.  
  95.  
  96.  
  97.  
  98.         class PlayerTask extends AsyncTask<String, Void, Boolean> {
  99.             @Override
  100.             protected Boolean doInBackground(String... strings) {
  101.                 try {
  102.                     mediaPlayer.setDataSource(stream);     // replaced with stream so they know the url
  103.                     mediaPlayer.prepareAsync();
  104.                     prepared = true;
  105.                 } catch (IOException e) {
  106.                     e.printStackTrace();
  107.                 }
  108.  
  109.                 return prepared;
  110.             }
  111.  
  112.             @Override
  113.             protected void onPostExecute(Boolean aBoolean) {
  114.                 super.onPostExecute(aBoolean);
  115.                 b_play1.setEnabled(true);
  116.             }
  117.         }
  118.  
  119.  
  120.  
  121.     private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
  122.             = new BottomNavigationView.OnNavigationItemSelectedListener() {
  123.  
  124.         @Override
  125.         public boolean onNavigationItemSelected(@NonNull MenuItem item) {
  126.             switch (item.getItemId()) {
  127.                 case R.id.navigation_radio:
  128.                     return true;
  129.                 case R.id.navigation_articles:
  130.                     startActivity(new Intent(MainActivity.this, ArticleActivity.class));
  131.                     return true;
  132.             }
  133.             return false;
  134.         }
  135.     };
  136. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement