También he tenido este molesto problema en iOS. En realidad, es aún más molesto para iOS ya que el usuario tiene que sincronizar su dispositivo con iTunes y habilitar el envío de informes de fallos antes de que se envíe el informe de fallos a diferencia de Mac OS X donde no es necesario que haga todo eso. Recientemente, logré agregar una verificación en tiempo de compilación para verificar API contra versiones anteriores del SDK. Primero explicaré cómo lo hice para iOS primero y luego intentaré ayudarte a adaptar esta técnica para Mac OS X. No codifico mucho para Mac atm, así que solo puedo guiarte en la dirección correcta desde mi experiencia. con iOS, pero probaré mis sugerencias más tarde hoy una vez que regrese del trabajo y dé una respuesta definitiva.
Así que aquí es lo que hice para iOS:
primero tenía que conseguir el mayor Simulador SDK quería obtener. Podría obtenerlo fácilmente descargando versiones anteriores de Xcode (no 4) que incluían el SDK necesario.
Luego tuve que instalar el SDK. Esto no fue muy difícil, así que no voy a explicar mucho aquí. Pero los SDK se almacenan en la carpeta Packages
. Esta carpeta es claramente visible en versiones anteriores de Xcode 3, pero está oculta en versiones posteriores. Puede abrirlo de todos modos a través de la Terminal. Además, después del cambio en Xcode 4.3 donde se movió la carpeta Developer
dentro de Xcode.app, tuve que instalar el SDK en una carpeta tmp y mover el SDK a Xcode.app usted mismo. Entonces necesitaría reiniciar Xcode si lo tuviera abierto.
Después de eso, dupliqué mi configuración debug
en su proyecto y la denominé, en mi caso, algo así como iOS 4.3 API Check
o algo así - en realidad no importa. Luego cambié el SDK base de esta nueva configuración al viejo SDK que instalé. El SDK que instalé no estaba en la lista, así que tuve que seleccionar other
e ingresar, nuevamente en mi caso, iphonesimulator4.3
.
Finalmente, cuando necesité comprobar contra versiones anteriores del SDK, cambié la configuración para el Run <appname>.app
en mi esquema de proyecto a la configuración iOS 4.3 API Check
. Y ahí vamos, una verificación en tiempo de compilación contra iOS 4.3.
En Mac OS X, estoy seguro de que puede lograr el mismo objetivo con este mismo método. No hay simuladores para el SDK de Mac, así que creo que el SDK normal funcionará para esto. En cuanto a obtener el SDK más antiguo, si tiene Xcode 4.2 todavía instalado (después de que Xcode 4.3 lo haya cambiado para que la carpeta Developer
esté dentro de Xcode.app), entonces debería encontrar allí el SDK 10.6. Si no lo hace, me imagino que Apple tiene una cosa similar a iOS donde las descargas de SDK están disponibles en el Dev Center o en algún lugar en Internet ...
En cuanto a la configuración del SDK base, si no es en la lista, entonces creo que el nombre es MacOSX10.6
o la versión que quieras.
Todo lo demás debería ser igual, pero como mencioné anteriormente, probaré este método más tarde y editaré mi respuesta para dar una respuesta más definitiva, pero me imagino que este método funcionaría para Mac SDK.
que tenía una pregunta similar en relación con iOS, pero muchos puntos deben ser similares. http://stackoverflow.com/questions/19111934/get-xcode-5-to-warn-about-new-api-calls/19131877 – Rivera