Autore Topic: Problema riproduzione radio streaming  (Letto 751 volte)

Offline carlez

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    p500
  • Sistema operativo:
    ArchLinux
Problema riproduzione radio streaming
« il: 05 Marzo 2013, 17:48:21 CET »
0
Buon pomeriggio, ho sviluppato un'applicazione per riprodurre una radio in streaming utilizzando la classe MediaPlayer.
Per fare questo ho creato un servizio che faccio partire dalla main activity al momento dell'apertura dell'applicazione.

Codice (Java): [Seleziona]
package com.android.radiocitylight;

import java.io.IOException;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnPreparedListener;
import android.os.IBinder;
import android.support.v4.app.NotificationCompat;
import android.support.v4.app.TaskStackBuilder;

/*
 * AVVIO E ARRESTO DEL SERVIZIO
 * startService(new Intent(this, RCLService.class));
 * stopService(new Intent(this, RCLService.class));
 */


public class RCLService extends Service implements OnPreparedListener {
       
        MediaPlayer mediaPlayer;
        NotificationManager notificationManager;
       
        @Override
        public IBinder onBind(Intent arg0){
                return null;
               
        }
       
        @Override
        public void onCreate () {
               
                String url = "http://217.27.88.204:8000";
        mediaPlayer = new MediaPlayer();
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        try {
                        mediaPlayer.setDataSource(url);
                } catch (IllegalArgumentException e) {
                        e.printStackTrace();
                } catch (SecurityException e) {
                        e.printStackTrace();
                } catch (IllegalStateException e) {
                        e.printStackTrace();
                } catch (IOException e) {
                        e.printStackTrace();
                }
        mediaPlayer.setOnPreparedListener(this);
        mediaPlayer.prepareAsync();
        }
       
    public void onPrepared(MediaPlayer player) {
        player.start();
        createNotification ();
    }
   
    public void createNotification () {
        NotificationCompat.Builder mBuilder =
                new NotificationCompat.Builder(this)
                .setSmallIcon(R.drawable.ic_launcher)
                .setContentTitle("RadioCityLight")
                .setContentText("Streaming attivo")
                .setOngoing(true);
        Intent resultIntent = new Intent(this, MainActivity.class);
        TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
        stackBuilder.addParentStack(MainActivity.class);
        stackBuilder.addNextIntent(resultIntent);
        PendingIntent resultPendingIntent =
                stackBuilder.getPendingIntent(
                    0,
                    PendingIntent.FLAG_UPDATE_CURRENT
                );
        mBuilder.setContentIntent(resultPendingIntent);
        notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
        notificationManager.notify(1, mBuilder.build());
    }
       
        @Override
        public void onDestroy () {
                if (mediaPlayer != null) mediaPlayer.release();
                notificationManager.cancel(1);
        }      
}

L'api level del progetto è 8 e ho provato ad eseguire l'applicazione su una macchina virtuale con froyo e una con jelly bean.
Quando faccio partire l'applicazione alcune volte funziona mentre altre volte ricevo questo errore:

Codice: [Seleziona]
03-05 17:23:51.284: E/MediaPlayer(774): Error (1,-1004)
Ho cercato molto ma non sono riuscito a capire bene quale sia il problema. Che ne dite?

Offline carlez

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    p500
  • Sistema operativo:
    ArchLinux
Re:Problema riproduzione radio streaming
« Risposta #1 il: 08 Marzo 2013, 23:26:17 CET »
0
allora, ho scoperto il problema! praticamente la radio in questione semplicemente non trasmetteva e il server era down.
a questo punto come posso implementare un controllo sullo stato del server shoutcast? ho provato a leggere l'http status code ma senza successo..