ios开发:播放在线的mp3

一,代码:

import SwiftUI
import AVFoundation

struct Mp3View: View {
    // 1. 创建一个持久化的播放器实例
    @State private var player: AVPlayer?
    let mp3Url = "https://hanyu-poem-voice.cdn.bcebos.com/man/38a52978fb6f4cfd8bcc25fc2db2c0fa.mp3" // 替换为真实的在线MP3地址

    var body: some View {
        VStack(spacing: 20) {
            Button(action: {
                playAudio(url: mp3Url)
            }) {
                Label("播放音乐", systemImage: "play.circle.fill")
                    .font(.title)
                    .padding()
                    .background(Color.blue)
                    .foregroundColor(.white)
                    .cornerRadius(10)
            }

            Button(action: {
                player?.pause()
            }) {
                Label("暂停", systemImage: "pause.circle.fill")
                    .font(.title)
                    .padding()
                    .background(Color.blue)
                    .foregroundColor(.red)
                    .cornerRadius(10)
            }
        }
    }

    // 2. 播放逻辑
    func playAudio(url: String) {
        guard let url = URL(string: url) else { return }
        
        // 如果播放器不存在,则初始化;如果已存在,直接播放
        if player == nil {
            player = AVPlayer(url: url)
        }
        player?.play()
    }
}

 

二,运行效果:

image

 

posted @ 2026-04-05 20:58  刘宏缔的架构森林  阅读(11)  评论(0)    收藏  举报