Utilizzo di file dal progetto Android in Media Player

Aug 23 2020

inserisci qui la descrizione dell'immagine ho un'applicazione mobile dedicata alla riproduzione di articoli utilizzando MediaPlayer. Sto cercando di impostare la pausa tra le singole frasi, tuttavia continuo a ricevere n ull referenceal, pausesPlayerquindi l'accesso ai file mp3 nel mio droid project from shared projectdeve essere sbagliato. Per favore, hai qualche esperienza su come accedere al file in Droid senza Main Activity

MediaPlayer.Create(MainActivity.Instance, Resource.Raw.silent_1);

public static void SetPauseBetweenSentences(int timeout)
{
    lock (syncRoot)
    {
        pausesPlayer = new MediaPlayer();
        if (timeout != 0)
        {
            switch (timeout)
            {
                case 1:
                    pausesPlayer = MediaPlayer.Create(Android.App.Application.Context, Android.Net.Uri.Parse("AT.Droid/Resources/raw/silent_1"));
                    break;
                case 2:
                    pausesPlayer = MediaPlayer.Create(Android.App.Application.Context, Android.Net.Uri.Parse("AT.Droid/Resources/raw/silent_2"));
                    break;
                case 3:
                    pausesPlayer = MediaPlayer.Create(Android.App.Application.Context, Android.Net.Uri.Parse("AT.Droid/Resources/raw/silent_3"));
                    break;
                case 4:
                    pausesPlayer = MediaPlayer.Create(Android.App.Application.Context, Android.Net.Uri.Parse("AT.Droid/Resources/raw/silent_4"));
                    break;
                case 5:
                    pausesPlayer = MediaPlayer.Create(Android.App.Application.Context, Android.Net.Uri.Parse("AT.Droid/Resources/raw/silent_5"));
                    break;
            }
            pausesPlayer.Start();
        }
    }
}

Ho provato

pausesPlayer = MediaPlayer.Create(Android.App.Application.Context, Android.Net.Uri.Parse("android.resource://AT.Droid/Resources/raw/silent_1"));
    

e

pausesPlayer = MediaPlayer.Create(Android.App.Application.Context, Android.Net.Uri.Parse("android.resource://AT/Resources/raw/silent_1"));

Risposte

JackHua-MSFT Aug 24 2020 at 05:48

Dal documento puoi usare:

Metodo pratico per creare un MediaPlayer per un determinato ID risorsa.

public static Android.Media.MediaPlayer Create (Android.Content.Context context, int resid);

E nel tuo caso è:

MediaPlayer player = MediaPlayer.Create(this, Resource.Raw.silent_1);

Per ulteriori soluzioni, puoi dare un'occhiata a questo thread .

Aggiornamento :