2015-05-04 15 views
7

Sto cercando di creare un lettore musicale multi-sorgente con tracce provenienti da YouTube e Soundcloud e vorrei sovrascrivere il contenuto di MPNowPlayingInfoCenter per fornire informazioni sugli artisti/rilasci invece del nome di il video di YouTube.Override di MPNowPlayingInfoCenter durante l'utilizzo di WKWebView

Tutto ha funzionato bene quando ho usato UIWebView, ma per motivi di prestazioni, ho dovuto passare al nuovo WKWebview e ora il metodo che ho usato prima di impostare i nowPlayingInfos non ha alcun effetto

C'è un modo per disattivare la mappatura automatica dei tag <audio> e <video> all'interno dell'HTML e/o per sovrascrivere le informazioni fornite con le mie informazioni?

Ecco il codice che uso che funziona su iOS 7 e ha lavorato su iOS 8 quando ho usato UIWebView:

let newInfos = [ 
      MPMediaItemPropertyTitle: (currentPlaylist[currentPlaylistIndex] as! Track).trackName, 
      MPMediaItemPropertyArtist: (currentPlaylist[currentPlaylistIndex] as! Track).trackArtist, 
      MPMediaItemPropertyPlaybackDuration: NSNumber(integer: self.getDuration()), 
      MPNowPlayingInfoPropertyElapsedPlaybackTime: NSNumber(integer: self.getCurrentTime()), 
      MPNowPlayingInfoPropertyPlaybackRate: NSNumber(double: self.playing ? 1.0 : 0.0), 
      MPMediaItemPropertyArtwork: MPMediaItemArtwork(image: image) 
     ] 

MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = newInfos 

ho controllato che nessuna delle variabili che uso sono pari a zero, e ho attivato il mio AudioSession in the AppDelegate

var audioSession = AVAudioSession.sharedInstance() 
var error : NSError? 
audioSession.setCategory(AVAudioSessionCategoryPlayback, error: &error) 
audioSession.setActive(true, error: &error) 
UIApplication.sharedApplication().beginReceivingRemoteControlEvents() 

Qualche idea?

+0

Were sei in grado di trovare una soluzione per questo? Basta passare un giorno a cercare di trovare un modo per ignorare WKWebView e UIWebView fornendo informazioni sulla schermata di blocco (voglio fornire UIImage e testo da solo ..) Nessun successo .. BTW: con IOS 8.4 e UIWebView, non posso anche imposta l'immagine della schermata di blocco più – cujo30227

+0

No, alla fine ho rinunciato e ho spedito l'app senza NowPlayingInfos per iOS 8 e WKWebview Ho creato un problema su Apple Radar, ma finora non ho avuto alcuna risposta, è stato più di 3 mesi, e la situazione è sempre la stessa in iOS 9, quindi non penso che faranno nulla –

risposta

2

Anche se è impossibile ignorare la struttura in sé su iOS, va notato che cambiando il "titolo" di proprietà dell'elemento <video> in JavaScript

ho raggiunto questo comportamento con

var control = ...; //Create video DOM control 
control.title = "Desired title";