Apple Music Won't Play using the latest version of Xcode/MacOS

I have tried everything. The songs load unto the playlists and on searches, but when prompted to play, they just won't play.

I have a wrapper since my main player (which carries the buttons for play/rewind/forward/etc.), is in Objc.

// // ApplePlayerWrapper.swift // UniversallyMac // // Created by Dorian Mattar on 11/10/24. //

import Foundation import MusicKit import MediaPlayer

@objc public class MusicKitWrapper: NSObject {

@objc public static let shared = MusicKitWrapper()
private let player = ApplicationMusicPlayer.shared

// Play the current track
@objc public func play() {
    
    guard !player.queue.entries.isEmpty else {
        print("Queue is empty. Cannot start playback.")
        return
    }
    logPlayerState(message: "Before play")

    Task {
        do {
            try await player.prepareToPlay()
            try await player.play()
            print("Playback started successfully.")
        } catch {
            if let nsError = error as NSError? {
                print("NSError Code: \(nsError.code), Domain: \(nsError.domain)")
            }
        }
        logPlayerState(message: "After play")
    }
}


// Log the current player state
@objc public func logPlayerState(message: String = "") {
    print("Player State - \(message):")
    print("Playback Status: \(player.state.playbackStatus)")
    print("Queue Count: \(player.queue.entries.count)")

    // Only log current track details if the player is playing
    if player.state.playbackStatus == .playing {
        if let currentEntry = player.queue.currentEntry {
            print("Current Track: \(currentEntry.title)")
            print("Current Position: \(player.playbackTime) seconds")
            print("Track Length: \(currentEntry.endTime ?? 0.0) seconds")
        } else {
            print("No current track.")
        }
    } else {
        print("No track is playing.")
    }

    print("----------")
}


// Debug the queue
@objc public func debugQueue() {
    print("Debugging Queue:")
    for (index, entry) in player.queue.entries.enumerated() {
        print("\(index): \(entry.title)")
    }
}

// Ensure track availability in the queue
public func queueTracks(_ tracks: [Track]) {
    Task {
        do {
            for track in tracks {
                // Validate Play Parameters
                guard let playParameters = track.playParameters else {
                    print("Track \(track.title) has no Play Parameters.")
                    continue
                }

                // Log the Play Parameters
                print("Track Title: \(track.title)")
                print("Play Parameters: \(playParameters)")
                print("Raw Values: \(track.id.rawValue)")

                // Ensure the ID is valid
                if track.id.rawValue.isEmpty {
                    print("Track \(track.title) has an invalid or empty ID in Play Parameters.")
                    continue
                }

                // Queue the track
                try await player.queue.insert(track, position: .afterCurrentEntry)
                print("Queued track: \(track.title)")
            }
            print("Tracks successfully added to the queue.")
        } catch {
            print("Error queuing tracks: \(error)")
        }
        debugQueue()
    }
}

// Clear the current queue
@objc public func resetMusicPlayer() {
    Task {
        player.stop()
        player.queue.entries.removeAll()
        print("Queue cleared.")
        print("Apple Music player reset successfully.")
    }
}

}

I opened an Apple Dev. ticket, but I'm trying here as well. Thanks!

Almost the same issue, my code was working last week and now there is no audio played anymore. The preview links are working but full songs are not audible, the player says playing and doesnt show any error accept:

[1] ASYNC-WATCHDOG-1: Attempting to wake up the remote

[2] process Playback started successfully.

Apple Music Won't Play using the latest version of Xcode/MacOS
 
 
Q