Pregunta

Estoy trabajando con el marco ID3 en Xcode (que desde entonces ha desaparecido de la faz de la web - incluyendo caché de Google).

Estoy probando a cabo una función de mp3 de importación que les permite editar las etiquetas, ya que les importan. Uno de los casos de prueba es un mp3 dañado o no válido con ninguna cabecera ID3 correcta. El problema que estoy teniendo es que al actualizar las etiquetas de los mp3 válido (updateFile:), el marco ID3 intenta utilizar id3V1Tag.m (supongo que cae de nuevo a esto si no puede encontrar la etiqueta v2) y aquí es donde me obtener el error Xcode (mientras se ejecuta el programa, no la construcción):

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

Incluso en una versión de lanzamiento de este bloquea el programa, así que no es algo que realmente puede pasar por alto.

He intentado poner un bloque try / catch alrededor, pero no es tratada como una excepción por lo que no quede atrapado. La función para cargar los datos de la etiqueta para el archivo devuelve un BOOL pero parece que esto sólo devuelve false si no existe el fichero dado, así que esto no ayuda tampoco.

código actual:

[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");
    }
}
¿Fue útil?

Solución

El error que está recibiendo es que Xcode está tratando de localizar el archivo de origen id3V1Tag.m con el fin de mostrar que durante la depuración. No hay código que escriba afectará esto.

Si no tienes el código fuente id3V1Tag.m en su distribución marco, no hay nada que puedas hacer al respecto, y hay poco que hacer, pero lo ignoran (aparte de ver si se puede evitar haciendo que se solicitó, como no establecer un punto de interrupción en ella, no entrar en ella, y no chocar en ella).

Si lo tiene, y lo están construyendo, entonces tal vez usted no está construyendo con la información de depuración adecuado, por lo que tiene que decirnos más acerca de la configuración de su construcción.

Otros consejos

Así que el problema que tiene es que su programa se bloquea cuando intenta compilar id3V1Tag.m o mientras se ejecuta el programa. Estoy un poco confundido al respecto.

Si su estrellarse mientras se ejecuta tal vez esto es un problema con un archivo de código que falta de una biblioteca? ¿Cómo estás leyendo la información de la etiqueta ID3 exactamente? Es a través de su propio código o mediante una tercera biblioteca de partido / clase.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top