Strana registrazione AQDefaultDevice


140

Sto riproducendo video da un controller in questo modo:

func playMovie() {
    let path = Bundle.main.path(forResource: "xyz", ofType:"mov")
    let url = URL(fileURLWithPath: path!)

    self.player = AVPlayer(url: url)
    let layer: AVPlayerLayer = AVPlayerLayer(player: self.player)

    layer.frame = self.view.frame
    layer.videoGravity = AVLayerVideoGravityResizeAspectFill
    self.view.layer.addSublayer(layer)

    self.player.play()
}

Anche dopo che il controller è stato distrutto e non è più in uso, ricevo questo messaggio di registro ogni secondo circa:

AQDefaultDevice (173): skipping input stream 0 0 0x0

Non sto chiedendo come nascondere questi registri. So come farlo impostando OS_ACTIVITY_MODEsu disable( Vedi questo per come nascondere questi registri ). La mia preoccupazione è che il film possa essere riprodotto in qualche modo anche dopo la distruzione del controller. C'è qualcosa di sbagliato nel modo in cui sto interpretando il film. O devo eseguire un'ulteriore pulizia?


Immagino che questa risposta ti si adatti. Spiega un modo per rimuovere il registro con maggiori dettagli. stackoverflow.com/a/40336926/4602597
MessuKilkain

6
La mia domanda non riguardava come nascondere i registri indesiderati. L'ho chiarito nell'ultimo paragrafo. La mia domanda era se quel particolare registro puntava a una risorsa non rilasciata relativa ad AVPlayer.
RajV,


L'unico motivo per cui ho trovato questa domanda (e la soluzione collegata nei commenti ad essa) è disabilitare questo fastidioso aspetto del registro su un oggetto lettore multimediale, poiché interferisce con la lettura di altri registri; FWIW. Ma sì, apparentemente stai facendo le cose bene e il registro non si sta comportando come dovrebbe.
Alex Hall,

Questo è così fastidioso. Ho passato ore a cercare di capire perché il giocatore non si fermava e ora - per quanto ne so - è un bug XCode. Hai mai trovato un'altra risposta @RajV?
David Vincent Gagne,

Risposte:


67

Ho riscontrato questo problema quando utilizzo AVPlayer Foundation su iOS Simulator (xcode 8.1). Tuttavia non si registra più sui dispositivi iOS. Secondo me è un bug di registro. Il giocatore o il livello sono distrutti.


aggiornare

ho trovato questo per te per correggere i messaggi di registro indesiderati


Avere lo stesso registro, non utilizza AVPlayer Foundation.
Dima Deplov,

Non ne sono sicuro, quando uso Xcode 7, il messaggio di registro scompare
zippo

1
Ho lo stesso problema dopo aver usato AVPlayer
ben

ciao ragazzi , ho trovato questo per voi correggere i messaggi di registro indesiderati
zippo

101

No, non fai niente di male. Questo è un bug con i log in Xcode8 + iOS10.


Possiamo aggirare il problema in questo modo (dispositivo e simulatore richiedono valori diversi):

Aggiungi il nome OS_ACTIVITY_MODEe il valore ${DEBUG_ACTIVITY_MODE}e controllalo (in Prodotto -> Schema -> Modifica schema -> Esegui -> Argomenti -> Ambiente).

inserisci qui la descrizione dell'immagine

Aggiungere Impostazione definito dall'utente DEBUG_ACTIVITY_MODE, quindi aggiungere Any iOS Simulator SDKper Debuge impostare il suo valore a disable(in Project -> impostazioni di generazione -> + -> Impostazioni Definito dall'utente)

inserisci qui la descrizione dell'immagine


8
Hai letto la mia domanda? Ho già detto che posso disabilitare la registrazione usando OS_ACTIVITY_MODE. Non è questo il punto di questa domanda.
RajV,

Questo è un bug con i log in Xcode8 + iOS10. - questa è una risposta alla tua domanda.
Igor,

La domanda che ho posto non riguarda come nascondere questi messaggi di registro. Era, e cito, "C'è qualcosa di sbagliato nel modo in cui sto interpretando il film. O devo eseguire una pulizia?"
RajV,

22
Una "soluzione" che mi richiede di modificare manualmente una variabile d'ambiente, ogni volta che passo dall'esecuzione nel simulatore all'esecuzione su un dispositivo, non è affatto una soluzione.
matt

14
Se trovi una soluzione migliore, ti preghiamo di comunicarcelo.
Igor,

0

Non proprio una risposta, ma più di un indizio che potrebbe aiutare qualcuno a eseguire il debug di questo ...

Ho iniziato a ricevere questo avviso non appena ho rimosso il framework AVFoundation dal mio progetto Xcode 9 / iOS 11. Sto usando AVFoundation (in particolare AVPlayer e AVPlayerLayer), ma è stato comunque eseguito e compilato correttamente dopo aver rimosso il framework dall'editor dei frame e delle librerie collegati del target e quindi averlo rimosso dalla cartella Frameworks (stavo cercando di eliminare un avviso di runtime diverso) .

L'aggiunta di nuovo tramite l'editor di framework e librerie collegate ha eliminato gli avvisi di runtime nella console.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.