По моему опыту, у вас не будет особых проблем с совместимостью между iPod / iPhone. Есть и другие ошибки, о которых нужно знать:
- Устройства работают на разных скоростях. iPhone v1 и iPhone 3G работают на частоте 412 МГц; iPod Touch работает на частоте 532 МГц, а новый 3GS работает на частоте 600 МГц. Это может сильно повлиять на производительность и даже функциональность, если вам это нравится.
- Существует огромная разница в производительности между сетями EDGE / 3G / WiFi ; часто различия противоречат друг другу. EDGE часто может иметь лучшую задержку (время до первого байта), чем 3G, тогда как 3G имеет в 10 раз большую пропускную способность. Вы захотите протестировать свое приложение при всех трех условиях.
- Вы используете основное местоположение? iPhone v1 и iPod Touch не имеют GPS.
- Вы используете камеру? В iPod Touch нет камеры.
- Совместимо ли ваше приложение с взломанными телефонами? Многие люди сделали это, и если ваше приложение зависнет на них, они обвинят вас, а не хакеров Dev Team, и это будет отражено в ваши оценки App Store. Обратите особое внимание, что фоновые приложения могут использовать память, которая, как вы думали, будет доступна исключительно для вашего приложения. Оставь себе немного над головой.
Итак, что вам нужно купить? Если вы серьезный разработчик, да, вы должны иметь все 5 доступных устройств. Но нужно ли тестировать каждую сборку на всех 5 устройствах? Каждому из ваших разработчиков нужно по 5 устройств? Нет.
Один разработчик может протестировать все, что имеет значение, с одним iPhone 3G и iPod Touch. Бросьте 3GS и ваше покрытие, вероятно, почти идеально. (Обратите внимание, что разработка на 3GS намного приятнее только потому, что процессор быстрее, поэтому ваши приложения развертываются быстрее.)
На работе у нас есть одно устройство на разработчика, но они представляют собой смесь устройств 3G и iPod (а сегодня - одно 3GS).