esta es una pregunta muy simple que estoy asumiendo. ¿Alguien puede decirme qué significa el objetivo de implementación? Si elijo IOS 10, ¿significa eso que solo los usuarios con iOS 10 pueden descargar la aplicación? ¿Es malo elegir un objetivo de implementación más bajo? TAMBIÉN, continuando con el objetivo de implementación, no se recomienda ejecutar en un objetivo de implementación inferior.
107
Respuestas:
Supongamos que ha establecido un objetivo de implementación mínimo para iOS 9. Esto significa que su aplicación es compatible con dispositivos iOS 9 y superiores .
La aplicación no se ejecutará en dispositivos inferiores a 9.0, pero puede ejecutarse en cualquier versión de iOS superior a iOS 9.0.
fuente
Deployment Target
última instancia cambia el Info.plist. Es una forma conveniente agregada (probablemente) después de Xcode 4.xEl objetivo de implementación determina la capacidad de su aplicación para ejecutarse en versiones anteriores de iOS.
App with deployment target set to 10 will work on iOS version 10+ (10, 11, 12, 13 ...) but won't work on 9.x.
Cuando se lanza una nueva versión de iOS, algunas personas no se molestan en actualizar sus dispositivos a la última versión de iOS y, por lo tanto, lo hacen
can't download your app from the App Store
.Ejemplo
Si elige un objetivo de implementación más alto
(e.g 12.1)
, su aplicación no podrá descargarse para las personas que incluso tienen los dispositivos más recientes, pero tienen una versión de iOS anterior (iPhone X con 11.0). En contraste Si elige el objetivo de implementación más bajo posible(e.g 6.0)
, intenta hacer que su aplicación sea el máximo compatible con versiones anteriores (por lo que incluso si alguien no ha actualizado su iOS en años, podrá descargar su aplicación).PRECAUCIÓN
Muchos (casi todos) los marcos y funciones más nuevos no podrán ejecutarse correctamente (comportarse como se esperaba) en versiones inferiores de iOS, lo que aumenta las posibilidades de que la aplicación se bloquee.
Qué afecta el objetivo de implementación
A continuación se presentan algunos factores que exigen un objetivo de implementación más alto.
1) Usando el último SDK de iOS (solo)
2) Utilizando las últimas funciones específicas del SDK de iOS (restricciones, archivos XIB más nuevos, etc.).
3) Uso de bibliotecas / marcos externos de rápida adaptación (por ejemplo, SDK de Facebook, Firebase, etc.).
4) La versión Swift superior (5.0) requiere un objetivo de implementación más alto en comparación con escribir su aplicación en el objetivo anterior C)
!Needs citation
.SOLUCIÓN
Hemos estado utilizando Deploymate para obtener el máximo soporte hacia atrás. Principalmente nos ayuda a advertir lo siguiente:
1) API más nuevas que no funcionarán en versiones inferiores de iOS
2) Usar métodos obsoletos que no funcionarán en las versiones más recientes de iOS.
Aquí es cuando comienza a corregir su código para que esté disponible para versiones inferiores de iOS para una máxima compatibilidad.
Nota: Xcode también informa sobre varias trampas. Deploymate no está asociado con nosotros ni nos paga de ninguna forma. Puedes buscar otras alternativas.
fuente
Deployment Target
es una versión mínima de iOS compatible con su objetivo.Esto significa que:
Para cambiarlo en Xcode 11.5
fuente
Si es nuevo en Xcode, le sugiero que acepte el valor predeterminado y lo considere una restricción en su proyecto.
A medida que aparezcan nuevas versiones de Xcode, se eliminará la compatibilidad con valores de destino más antiguos. Las empresas que tienen una amplia base de clientes tienen que afrontar este problema a su manera.
En la mayoría de los proyectos en los que he trabajado, la versión de iOS es importante porque dicta qué dispositivos pueden ejecutar su aplicación.
Por ejemplo, iOS 10 esencialmente dejó atrás todos los conectores estilo iPod.
fuente