2011-08-31 10 views
21

Quiero utilizar una URL de API diferente para mi aplicación de iPhone cuando estoy depurando o haciendo una implementación ad-hoc. ¿Hay alguna manera de detectar desde el código (si es adhoc) usar esta URL en lugar de la predeterminada?iOS, detectar ad-hoc desde el código

Respuesta

55

Hay dos maneras que se me ocurren:

1.) compilación condicional

Ya que tienes que "Archivo" el producto para distribuir la estructura ad hoc, puede ser que también la configuración de una nueva configuración para el Archive y aproveche el preprocesador.

2.) Archivos alternativos predeterminados .settings basados ​​en Release/Debug/AdHoc.

La misma sugerencia que la anterior, pero utilizando un archivo .settings en lugar de la compilación. Personalmente, recomendaría esto sobre la compilación condicional porque se puede cambiar (y guardar) después de la implementación si desea probar otros entornos sin volver a implementar.

EDITAR

Conditional Compilation refers to using "ifdef" blocks right? I tried this once but couldn't get it to check for AD-HOC, only DEBUG seemed to work

correcta.

No hay una macro "ADHOC" definida de forma predeterminada. Pero puedes agregar fácilmente uno.

Así es como usted puede ir sobre la configuración de una configuración adicional con una nueva macro preprocesador para su ADHOC construye:

Paso 1: Configuración una nueva configuración (opcional ... que sólo podría utilizar Release .. . Depende de usted).

Setup a new config

Paso 2: Añadir la macro preprocesador para que config. En mi captura de pantalla solo muestra Debug and Release porque en realidad no agregué una nueva configuración. Si ha añadido una nueva configuración (y lo llamó algo así como "AdHoc", debe aparecer aquí también:

enter image description here

Añadir ADHOC=1 al igual que la macro DEBUG=1 para la configuración de depuración

. paso 3: Cualquiera de modificar su esquema actual, o duplicar ella, de tal manera que la "Archive" paso utiliza su nueva configuración:

enter image description here

+0

No he leído/escuchado sobre ninguna de estas técnicas. ¿Tienes enlaces? La compilación condicional se refiere al uso de bloques "ifdef" ¿no? Intenté esto una vez, pero no pude hacer que comprobara AD-HOC, solo que DEBUG parecía funcionar. –

+0

Publicación actualizada para mostrarle cómo hacer esto. – Steve

+0

Excelentes capturas de pantalla. Gracias. Todos votan esta respuesta. –

Cuestiones relacionadas