Domanda

Sto lavorando con il quadro ID3 in Xcode (che da allora è scomparso dalla faccia della web - tra cui cache di Google).

Sono testare una funzione di importazione mp3 che permette loro di modificare i tag come li importano. Uno dei casi di test è un mp3 corrotto o non valido senza una corretta intestazione ID3. Il problema che sto avendo è che quando si aggiornano le variabili del mp3 valido (updateFile:), il quadro ID3 tenta di utilizzare id3V1Tag.m (suppongo che cade di nuovo a questo, se non riesce a trovare il tag v2) e questo è dove ho ottenere l'errore Xcode (mentre l'esecuzione del programma, non costruire):

Xcode could not locate source file: id3V1Tag.m (line: 299)

Anche in una build di rilascio questa si blocca il programma, quindi non è qualcosa che posso davvero ignorare.

Ho provato a mettere un blocco try / catch attorno ad esso, ma non è trattata come eccezione in modo da non farsi prendere. La funzione per caricare i dati dei tag per il file restituisce un BOOL ma sembra restituisce falso solo se il file specificato non esiste, quindi questo non aiuta.

Codice attuale:

[tagData release];
tagData = [[TagAPI alloc] initWithGenreList:nil];
tagsLoaded = [tagData examineFile:exportPath];
if(tagsLoaded) {
    [tagData setTitle:title];
    [tagData setArtist:artist];
    [tagData setComments:comments];
    @try {
        [tagData updateFile];
    }
    @catch (id e){
        NSLog(@"h");
    }
}
È stato utile?

Soluzione

L'errore che stai ricevendo è che Xcode sta cercando di individuare il file id3V1Tag.m origine al fine di mostrare che durante il debug. Nessun codice si scrive influirà questo.

Se non si dispone del file di origine id3V1Tag.m nella vostra distro quadro, non c'è niente che si può fare su questo, e c'è poco da fare, ma ignorarlo (diverso da vedere se si può evitare inducendolo a essere richiesto, come non fissando un punto di interruzione in essa, non entrare in esso, e non schiantarsi in esso).

Se avete, e stanno costruendo, allora forse non sta costruendo con le informazioni di debug a destra, quindi dovrete dirci di più sulla tua configurazione di generazione.

Altri suggerimenti

Quindi il problema che stai avendo è che il programma si blocca quando si tenta di compilare id3V1Tag.m o durante l'esecuzione del programma. Sono un po 'confuso su questo.

Se il suo crash durante l'esecuzione forse questo è un problemi con un file di codice mancante da una libreria? Come stai leggendo le informazioni ID3 tag esattamente? E 'attraverso il proprio codice o tramite un terzo libreria di partito / classe.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top