簡體   English   中英

有沒有辦法在一個媒體播放器對象中播放 mp3 文件?

[英]Is there a way to play mp3 files in one mediaplayer object?

我可以在 java android 中使用 Mediaplayer 類播放聲音。 我制作了一個像這樣的 Mediaplayer 對象。

Mediaplayer mp=Mediaplayer.create(this,R.raw.mysong);

然后啟動它,但如果我有不止一首歌曲並且必須播放它怎么辦。 我需要為他們每個人制作物品嗎? 我想說的是 Mediaplayer 類是否有任何方法或東西可以清除舊歌曲並播放新歌曲?

希望你明白我說的

我可以用一個簡單的例子來欣賞它。

像你所做的那樣只創建一個對象,但像這樣

Mediaplayer mp = new MediaPLayer();

更改數據源:如果您的源是 uri,只需將其傳遞給 setDataSource ,但如果是原始文件夾中的資源,請使用它從資源創建 uri

    int resourceId = R.raw.other_song

    uri uriSound = Uri.Builder()
        .scheme(ContentResolver.SCHEME_ANDROID_RESOURCE)
        .authority(resources.getResourcePackageName(resourceId))
        .appendPath(resources.getResourceTypeName(resourceId))
        .appendPath(resources.getResourceEntryName(resourceId))
        .build()

mp.setDataSource(this , uriSound)

根據需要准備並啟動媒體播放器

mp.prepare()
mp.start()

您創建沒有“.create”的媒體播放器對象,就像這樣 Mediaplayer mp=new Mediaplayer(); 然后你只需設置它的來源注意來源必須是uri格式mp.setDataSource(this,uri); 但在開始之前,你必須先像這樣准備: mp.prepare(); 然后開始。 當您想再次更改源時,請先停止 mp 然后設置另一個源 希望您能明白。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM