Во-первых, уверены ли вы, что ваше приложение на самом деле использует 40 МБ ОЗУ на старых устройствах? Я обнаружил (используя инструмент Memory Monitor), что это же приложение использует меньше оперативной памяти на моем iPhone 3G, чем на моем iPhone 4 или iPad. Последние два устройства имеют больше пикселей в своих интерфейсах, поэтому мое приложение потребляет больше памяти при работе на них.
Если это так, выясните, можете ли вы оптимизировать использование памяти, чтобы получить ее в безопасном (<30 МБ) диапазоне для более старого оборудования. Если вы можете сделать это, я думаю, вы увидите общее улучшение производительности в вашем приложении, даже на более новом оборудовании. </p>
Наконец, если вы абсолютно не можете работать на старом устройстве iOS, я бы порекомендовал использовать клавиши UIRequiredDeviceCapabilities armv7
или opengles-2
. Любой из них будет фильтровать для более нового (iPhone 3G S и выше) оборудования. Несмотря на то, что iPhone 3G S не зависел от объема памяти, он запустил значительно больше оперативной памяти, чем старые модели, и не имел устройства, поскольку его было меньше. Трудно представить, чтобы Apple сократила эту спецификацию в любой момент в будущем.