que estoy tratando de conseguir un sonido para jugar, pero cuando código:CFURLRef requiere un error de fundido en puente
AudioServicesCreateSystemSoundID ((CFURLRef) alertSound, &soundFileObject);
que arroja el siguiente error:
moldeada de Objective C-tipo de puntero ' NSURL *' a C tipo de puntero 'CFURLRef'(también conocido como '__CFURL estructura const *') requiere un error de fundido en puente
me han tratado tanto de los dos siguientes soluciones sugeridas:
AudioServicesCreateSystemSoundID ((__bridge CFURLRef) alertSound, &soundFileObject);
o
AudioServicesCreateSystemSoundID ((CFURLRef) CFBridgingRetain(alertSound), &soundFileObject);
Pero todavía no puedo obtener el sonido para jugar.
Supongo que la pregunta es: ¿el error de puente es la causa de que el sonido no se reproduzca, o debería buscar dónde?
Puedo obtener el sonido para jugar usando el código de muestra SysSound y estoy usando iOS 6 y Xcode 4.5.
Gracias por cualquier punteros :)
Sí, -50. Mi NSURL se ve así: NSURL * alertSound = [[NSBundle mainBundle] URLForResource: @ "tap" withExtension: @ "aif"]; Y el archivo "tap.aif" se encuentra en un grupo que creé llamado Sonidos. ¿Hay algún lugar específico que necesite ser colocado? ¡Muchas gracias por su ayuda! – robspencer77
Solo para asegurarse de verificar en el depurador o con un 'NSLog' que la URL es nula. Esto significaría (como creo que está empezando a sospechar) que Xcode no está copiando su sonido en el paquete de su aplicación. Puedes intentar eliminarlo (¡solo referencia!) De tu proyecto y volver a agregarlo y también verificar dos veces que la ortografía del nombre del archivo sea correcta (¿podría ser .aiff?). No creo que necesites ponerlo en un lugar especial. Usualmente pongo tales cosas en el grupo de "Archivos de Soporte" que crea Xcode, pero no creo que sea necesario. – idz
¡Ah, lo tengo! ¡Gracias! :) No estoy seguro de por qué no se ha agregado correctamente en primer lugar. ¡Salud, idz! – robspencer77