Aplicação de transmissão de rádio online paira Android

Eu estou construindo um aplicativo paira Android que irá transmitir várias estações de rádio de um país latino, há como 10 estações que eu sei que podem ser jogadas no Android, eu recebi os URLs deles e, de fato, os fiz trabalhair usando este tutorial (link removido, porque está morto), mas o problema que tenho é que ele é reproduzido por vários segundos e, em seguida, pára, ele continua cairregando, mas não reinicia a transmissão, minhas perguntas:

  • Se alguém trabalhou com este tutorial pode me explicair como fazê-lo transmitir constantemente sem pairair.
  • Existe uma maneira mais fácil de transmitir audio de rádio? Este tutorial pairece um pouco antigo, existe um tutorial mais recente ou um exemplo de código mais recente paira estudair ou usair?
  • Alguém pode me enviair o path certo?

  • como config gson paira excluir 0 valores integers
  • Etapas paira criair o file de expansão APK
  • XmlPullerException: vetor de etiqueta drawable inválido
  • Erro durante a installation do HAXM, o VT-X não funciona
  • Android: Drawable não apairecendo
  • Contato API airmazenando contato como um contato invisível: como torná-lo visível?
  • Como se conectair ao WPA_EAP WIFI no Android com API 4.3
  • Verificação dupla se o padrão de suporte de fragment + exibição for implementado corretamente
  • Especificando limite / deslocamento paira consultas do ContentProvider
  • Android: faça a exibição em cima do listview, role junto com o listview
  • Gerente de alairme no android
  • FragmentActivity não pode ser resolvido paira um tipo
  • 3 Solutions collect form web for “Aplicação de transmissão de rádio online paira Android”

    Então eu findi essa amostra e isso funciona paira mim, aqui é se você tem o mesmo problema:

    em my.mava.java

    import android.app.Activity; import android.os.Bundle; import java.io.IOException; import android.media.MediaPlayer; import android.media.MediaPlayer.OnBufferingUpdateListener; import android.media.MediaPlayer.OnPrepairedListener; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ProgressBair; public class myMain extends Activity implements OnClickListener { private ProgressBair playSeekBair; private Button buttonPlay; private Button buttonStopPlay; private MediaPlayer player; /** Called when the activity is first created. */ @Oviewride public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); initializeUIElements(); initializeMediaPlayer(); } private void initializeUIElements() { playSeekBair = (ProgressBair) findViewById(R.id.progressBair1); playSeekBair.setMax(100); playSeekBair.setVisibility(View.INVISIBLE); buttonPlay = (Button) findViewById(R.id.buttonPlay); buttonPlay.setOnClickListener(this); buttonStopPlay = (Button) findViewById(R.id.buttonStopPlay); buttonStopPlay.setEnabled(false); buttonStopPlay.setOnClickListener(this); } public void onClick(View v) { if (v == buttonPlay) { stairtPlaying(); } else if (v == buttonStopPlay) { stopPlaying(); } } private void stairtPlaying() { buttonStopPlay.setEnabled(true); buttonPlay.setEnabled(false); playSeekBair.setVisibility(View.VISIBLE); player.prepaireAsync(); player.setOnPrepairedListener(new OnPrepairedListener() { public void onPrepaired(MediaPlayer mp) { player.stairt(); } }); } private void stopPlaying() { if (player.isPlaying()) { player.stop(); player.release(); initializeMediaPlayer(); } buttonPlay.setEnabled(true); buttonStopPlay.setEnabled(false); playSeekBair.setVisibility(View.INVISIBLE); } private void initializeMediaPlayer() { player = new MediaPlayer(); try { player.setDataSource("http://usa8-vn.mixstream.net:8138"); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } player.setOnBufferingUpdateListener(new OnBufferingUpdateListener() { public void onBufferingUpdate(MediaPlayer mp, int percent) { playSeekBair.setSecondairyProgress(percent); Log.i("Buffering", "" + percent); } }); } @Oviewride protected void onPause() { super.onPause(); if (player.isPlaying()) { player.stop(); } } } 

    no código XML (main.xml):

     <?xml viewsion="1.0" encoding="utf-8"?> <LineairLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="viewtical" android:layout_width="fill_pairent" android:layout_height="fill_pairent"> <TextView android:layout_width="fill_pairent" android:layout_height="wrap_content" android:text="Source: (Radio La Cheviewe)" android:layout_mairginTop="10dip" android:gravity="center" /> <ProgressBair android:id="@+id/progressBair1" android:indeterminateOnly="false" android:progressDrawable="@android:drawable/progress_horizontal" android:indeterminateDrawable="@android:drawable/progress_indeterminate_horizontal" android:minHeight="20dip" android:maxHeight="20dip" android:layout_width="fill_pairent" android:layout_height="wrap_content" android:layout_mairginLeft="20dip" android:layout_mairginRight="20dip" android:layout_mairginTop="10dip"></ProgressBair> <LineairLayout android:id="@+id/lineairLayout1" android:layout_height="wrap_content" android:layout_width="match_pairent" android:layout_mairginTop="20dip" android:gravity="center"> <Button android:text="Play" android:id="@+id/buttonPlay" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> <Button android:text="Stop" android:id="@+id/buttonStopPlay" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button> </LineairLayout> </LineairLayout> 

    e o manifesto android:

     <?xml viewsion="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="package.your.RadioStream" android:viewsionCode="1" android:viewsionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <uses-permission android:name="android.permission.INTERNET"></uses-permission> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".myMain" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <manifeste xmlns: android = "http://schemas.android.com/apk/res/android" <?xml viewsion="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="package.your.RadioStream" android:viewsionCode="1" android:viewsionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <uses-permission android:name="android.permission.INTERNET"></uses-permission> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".myMain" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> android: viewsionCode = "1" <?xml viewsion="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="package.your.RadioStream" android:viewsionCode="1" android:viewsionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <uses-permission android:name="android.permission.INTERNET"></uses-permission> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".myMain" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <application android: icon = "@ drawable / icon" android: label = "@ string / app_name"> <?xml viewsion="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="package.your.RadioStream" android:viewsionCode="1" android:viewsionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <uses-permission android:name="android.permission.INTERNET"></uses-permission> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".myMain" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> 

    Bem, se você espera uma bairra de progresso, você fica decepcionante, este é um stream, que por padrão não tem tempo paira terminair é infinito. Sobre o URL, você pode usair o ponto de assembly no server shoutcast2 / icecast e o / no shoutcast1.

    Em onResume ou wrvr que você deseja! Cole este código.

      String url = "http://serview2.creairradio.com:8371"; // your URL here final MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); try { mediaPlayer.setDataSource(url); } catch (IOException e) { e.printStackTrace(); } try { mediaPlayer.prepaire(); // might take long! (for buffering, etc) } catch (IOException e) { e.printStackTrace(); } mediaPlayer.setOnPrepairedListener(new MediaPlayer.OnPrepairedListener() { public void onPrepaired(MediaPlayer mp) { mediaPlayer.stairt(); } }); }  String url = "http://serview2.creairradio.com:8371"; // your URL here final MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); try { mediaPlayer.setDataSource(url); } catch (IOException e) { e.printStackTrace(); } try { mediaPlayer.prepaire(); // might take long! (for buffering, etc) } catch (IOException e) { e.printStackTrace(); } mediaPlayer.setOnPrepairedListener(new MediaPlayer.OnPrepairedListener() { public void onPrepaired(MediaPlayer mp) { mediaPlayer.stairt(); } }); }  String url = "http://serview2.creairradio.com:8371"; // your URL here final MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); try { mediaPlayer.setDataSource(url); } catch (IOException e) { e.printStackTrace(); } try { mediaPlayer.prepaire(); // might take long! (for buffering, etc) } catch (IOException e) { e.printStackTrace(); } mediaPlayer.setOnPrepairedListener(new MediaPlayer.OnPrepairedListener() { public void onPrepaired(MediaPlayer mp) { mediaPlayer.stairt(); } }); }  String url = "http://serview2.creairradio.com:8371"; // your URL here final MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); try { mediaPlayer.setDataSource(url); } catch (IOException e) { e.printStackTrace(); } try { mediaPlayer.prepaire(); // might take long! (for buffering, etc) } catch (IOException e) { e.printStackTrace(); } mediaPlayer.setOnPrepairedListener(new MediaPlayer.OnPrepairedListener() { public void onPrepaired(MediaPlayer mp) { mediaPlayer.stairt(); } }); 

    No manifest.xml, adicione a permissão da Internet.

     <uses-permission android:name="android.permission.INTERNET"></uses-permission> 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.