1 votos

¿Cómo añade un desarrollador del App Store compatibilidad con versiones anteriores de iOS?

Acabo de publicar mi primera aplicación iOS en la App Store, pero quiero que sea compatible con dispositivos con versiones anteriores de iOS, y me gustaría confirmar cómo añadir esa compatibilidad antes de hacer algo que pueda estropear las cosas.

Al probar la descarga desde la App Store, descubrí que al dejar la configuración de iOS Deployment Target en la última versión de iOS (actualmente 13.2), parece que sólo los usuarios con la última versión de iOS en sus dispositivos pueden descargar la aplicación.

  • Tengo una versión 1.0.1 dirigida a iOS 13.2 en la tienda.

Creo que lo que tengo que hacer es:

  1. Cree otro archivo para iOS 12.0 con un número de versión superior (necesario para cargarlo después del anterior) y publíquelo en la tienda.

  2. Y si también quiero soportar iOS 11.0, añadir otro archivo construido para que con un número de versión superior, y subir eso también.

  3. A continuación, asegúrate de que todas aparecen como disponibles en App Store Connect -> mi aplicación -> Precios y disponibilidad -> Configuración de la última versión compatible.

¿Es todo lo que tengo que hacer? ¿Va a estropear algo que los objetivos más antiguos de iOS tendrán números de versión más altos de mi App?

2voto

Jose Chavez Puntos 645

No fastidia nada que tengas números de versión más nuevos que soporten objetivos iOS más antiguos que números de versión más antiguos. No pasa nada.

Recuerde que el objetivo de despliegue es el mínimo versión de iOS que deben tener los usuarios.

La forma óptima de hacer lo que quieres es establecer el objetivo de despliegue en iOS 11 y, a continuación, en tu aplicación utilizar condicionalmente funciones para iOS 12 y iOS 13 en función de su disponibilidad.

Esto significa que puedes compilar un único archivo que contenga una única app que se instale en iOS 11, iOS 12 e iOS 13, y que ofrezca diferentes funcionalidades en función de la versión de iOS del dispositivo del usuario.

Si usas Swift, por ejemplo, podría ser algo así:

if #available(iOS 13, *) {
  // new stuff
} else {
  // old stuff
}

0 votos

¡Muchas gracias! Sí, mi aplicación es en realidad multiplataforma y se ejecuta en mi iPhone 5s, así que creo que en realidad no uso ninguna de las nuevas características de iOS. Tal vez debería tener una versión dirigida a iOS 11.0 entonces.

-2voto

Dan Puntos 1235

Si compila y carga con bytecode activado, Apple puede generar los distintos archivos IPA para todos los dispositivos de destino y versiones de sistema operativo.

0 votos

Aunque técnicamente es correcto, esto no tiene nada que ver con la pregunta formulada por el OP.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X