Я пытаюсь воспроизвести аудиофайл из хранилища Firebase в своем приложении.
Я написал такой же код из видео на YouTube, но он не воспроизводит песню.
Кто-нибудь может сказать, в чем проблема?
Я пробовал довольно много решений в некоторых вопросах
, таких как отсутствие разрешения в манифесте, перемещение методов MediaPlayer и т. Д. c.
Ничего не работает.
public void play_Song(View view) {
final MediaPlayer mediaPlayer = new MediaPlayer();
try {
mediaPlayer.setDataSource( url );
mediaPlayer.prepare();
mediaPlayer.setOnPreparedListener( new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
} );
} catch (IOException e) {
e.printStackTrace();
}
mediaPlayer.setOnCompletionListener( new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mediaPlayer.release();
}
} );
}
Когда я запускаю метод play_Song
, я могу проверить следующий
V/MediaHTTPService: MediaHTTPService(android.media.MediaHTTPService@aeb6194): Cookies: null
V/MediaHTTPService: makeHTTPConnection: CookieManager created: java.net.CookieManager@a6bd43d
makeHTTPConnection(android.media.MediaHTTPService@aeb6194): cookieHandler: java.net.CookieManager@a6bd43d Cookies: null
D/NetworkSecurityConfig: No Network Security Config specified, using platform default
и через некоторое время я могу проверить это
E/MediaPlayerNative: error (1, -2147483648)
W/System.err: java.io.IOException: Prepare failed.: status=0x1
at android.media.MediaPlayer._prepare(Native Method)
at android.media.MediaPlayer.prepare(MediaPlayer.java:1274)
at techtown.testtest.mediaplayertest.MainActivity.play_Song(MainActivity.java:71)
W/System.err: at java.lang.reflect.Method.invoke(Native Method)
at androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:397)
at android.view.View.performClick(View.java:7125)
at android.view.View.performClickInternal(View.java:7102)
at android.view.View.access$3500(View.java:801)
W/System.err: at android.view.View$PerformClick.run(View.java:27336)
W/System.err: at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
E/catch: complete
I/Choreographer: Skipped 1813 frames! The application may be doing too much work on its main thread.
I/OpenGLRenderer: Davey! duration=30227ms; Flags=0, IntendedVsync=531877218816690, Vsync=531907435482148, OldestInputEvent=9223372036854775807, NewestInputEvent=0, HandleInputStart=531907438049220, AnimationStart=531907438097820, PerformTraversalsStart=531907438477920, DrawStart=531907438622820, SyncQueued=531907439252120, SyncStart=531907440144220, IssueDrawCommandsStart=531907440191720, SwapBuffers=531907441436520, FrameCompleted=531907447223120, DequeueBufferDuration=468000, QueueBufferDuration=353000,