¿Cuál es la mejor manera de usar las características del iPhone 3.0 sin dejar de mantener la compatibilidad con las versiones anteriores?
-
06-07-2019 - |
Pregunta
Por ejemplo, supongamos que escribí mi propia clase que me permitió grabar audio en el iPhone. iPhone OS 3.0 ahora proporciona esa funcionalidad como parte de Cocoa Touch Framework.
¿Cómo puedo usar mi clase existente para admitir iPhone OS versión 2.2.1 y anterior, pero al mismo tiempo aprovechar la nueva clase proporcionada por Cocoa Touch Framework para admitir iPhone OS 3.0?
Solución
Dado que Objective-C es un lenguaje muy dinámico, puede apuntar a 2.xy consultar la existencia de características 3.0:
id pasteboard = [objc_getClass("UIPasteboard") generalPasteboard];
if (pasteboard) {
NSLog(@"Got pasteboard, we're clearly on 3.0+");
} else {
NSLog(@"Pasteboard not available, definitely 2.x");
}
Otros consejos
La plataforma de iPhone tiene la tasa de actualización más alta de cualquier sistema operativo móvil, por lo que no me preocuparía por la compatibilidad con versiones anteriores. Vaya a la API de OS 3.0 y concéntrese en hacer otras cosas geniales con su aplicación.
Si las personas quieren su aplicación y tienen 2.2.1, todo lo que tienen que hacer es actualizar, y el sistema operativo iPhone también es el sistema operativo más fácil de actualizar.