iPhone: ¿Cómo puedo detectar que un dispositivo está ejecutando una compilación ad hoc de mi aplicación en tiempo de ejecución?

Quiero usar diferentes API cuando ejecuto implementaciones ad hoc de mi aplicación en comparación con las implementaciones de la tienda de aplicaciones. ¿Se puede saber esto en tiempo de ejecución? Sé que puedo usar #if TARGET_IPHONE_SIMULATOR y #if DEBUG cuando se ejecuta desde xcode, pero también quiero que se detecten las implementaciones adhoc. ¿Algunas ideas?

preguntado el 22 de mayo de 12 a las 11:05

2 Respuestas

Verifique que "../iTunesMetadata.plist" exista en su NSDocumentDirectory.

Este archivo está presente solo en las compilaciones de la tienda de aplicaciones, y está en la raíz de su aplicación, por lo que es seguro enviarlo a la tienda de aplicaciones.

contestado el 22 de mayo de 12 a las 11:05

Parece estar presente también para compilaciones ad-hoc. Estoy usando TestFlight; tal vez TestFlight agregue los metadatos para obtener íconos bonitos mientras descarga la aplicación. - Nick Fariña

Agregue una macro de preprocesador para su configuración AdHoc en Configuración de compilación. #si ADHOC // haz algo

contestado el 22 de mayo de 12 a las 11:05

Eso funcionará, pero no cumple con el requisito de hacerlo en tiempo de ejecución :) - María Zverina

@Brett No sé si uno puede encontrar mediante programación si la aplicación se ha firmado con el certificado AdHoc o Debug. Esto puede funcionar: si puede leer la provisión móvil integrada en su paquete de aplicaciones y buscar el nombre de su perfil de aprovisionamiento. - 0x8badf00d

Esta es la respuesta correcta. Simplemente cambie una variable si se definió ADHOC y detecte el valor de la variable en tiempo de ejecución. - EPage_Ed

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.