Dunque... non prendere quanto sto per scrivere per oro colato, visto che non ho fatto pratica su queste cose.
Suppongo che fai suonare le tue canzoni usando il MediaPlayer; questo dovresti metterlo in un servizio.
Nel servizio, nella routine Service_Create dovresti "impostare" esso per far sì che resti sempre in Foreground, chiamando:
Service.StartForeground(1, Notifica)
in cui Notifica è appunto un oggetto Notification che crei immediatamente prima di lanciare il comando sopra.
[anche per le notifiche alcune cose sono cambiate, purtroppo:
Notification object rewritten to work with targetSdkVersion 26. In most cases you don't need to change anything. Notification.SetInfo or Notification.SetInfo2 should be the last calls before you show the notification.
]
Per evitare lo "oscuramento" del display, usa ancora il tuo codice del post #3.
Altre novità, che riguardano Android 8+, sono queste:
https://www.b4x.com/android/forum/threads/automatic-foreground-mode.90546/
ma non credo che riguardino il tuo caso.
Se crei un progetto di prova, giusto con il minimo necessario, e non dovesse funzionare come ti serve, puoi allegarlo qui e vedremo di darti una mano.