Как стать автором
Обновить
77.44

iOS *

Мобильная ОС компании Apple

Сначала показывать
Порог рейтинга
Уровень сложности

AppCode — Новая IDE для Objective-С от JetBrains

Время на прочтение1 мин
Количество просмотров11K
Только что был анонсирован выпуск JetBrains AppCode, новой интегрированной среды разработки для Objective-C.

Как присуще всем IDE компании JetBrains наиболее сильные стороны AppCode: редактор кода с умным автодополнением, анализом кода проекта и подсказками по его улучшению, широкий спектр надежных рефакторингов, удобный отладчик с возможностью запуска кода на устройствах (iPhone или iPad), и удобная интеграция с системами контроля версий (SVN, Git, Mercurial, Perforce, и т.д.)

image

Конечно же присутствует интеграция с Xcode. Можно просто открыть проект Xcode, создать новый Xcode проект и пр. AppCode позволяет в любой момент переключаться в Xcode и обратно с сохранением всей структуры проекта. Для редактирования некоторых типов файлов, например xib, storyboard, автоматически используются инструменты Xcode. Более полный список функциональности можно посмотреть тут.

Продукт коммерческий, бесплатно можно пользоваться в течение 30 дней. Также можно получить бесплатную лицензию, если вы работаете над open-source проектом.

Фидбэк приветствуется!

Использование Storyboard

Время на прочтение4 мин
Количество просмотров60K

Вступление


В недавно вышедшем iOS 5 появился удобный механизм разработки интерфейса программы — Storyboard. Этот механизм позволяет заметно уменьшить количество кода связанного с переходами между экранами, показами Popover'a и даже с настрокой ячеек в таблице.

Задача: По нажатию на кнопку показать следующий экран поместив его в текущий NavigationController.
Решение без Storyboard:

DDetailViewController* nextController = [DDetailViewController new];
[self.navigationController pushViewController:nextController animated:YES];
[nextController release];

Решение с использованием Storyboard:


Вот и все! Никакого кода!

Читать дальше →

Face detection в iOS 5 SDK

Время на прочтение3 мин
Количество просмотров2.9K
iOS SDK доступен уже длительное время, но каждый iOS разработчик знает, что использовать новое API в своих приложениях еще очень рано, так как клиент заинтересован в совместимости своих программ со старыми версиями этой ос.

Но все нашлась парочка вкусностей в новом SDK. Первым бросился в глаза метод для UIViewController viewWillUnload, который так был нужен несколько месяцев назад.
Весь перечень нововведений для iOS 5 смотреть здесь.
В списке добаленых фреймворков вызывает интерес CoreImage и в частности CIDetector.h.

Класс CIDetector создан в помощ поиска и определения лиц на изображении, что мы сейчас попробуем вкратце проделать.
Читать дальше →

Обзор нововведений в Xcode 4.2 для iOS-разработчика

Время на прочтение4 мин
Количество просмотров4.5K
Одновременно с релизом iOS5 разработчики получили в свое распоряжение обновленный Xcode 4.2, в котором ожидаемо обнаружились некоторые новые «фичи». Под катом кратко рассмотрим основные нововведения, представленные в XCode 4.2.
Читать дальше →

Сканируем и распознаем QR-коды из своего iOS-приложения

Время на прочтение7 мин
Количество просмотров21K
QR-коды сегодня используются практически везде, где только можно себе представить. Вполне очевидно, что многим разработчикам было бы интересно узнать, как организовать сканирование и распознавание QR-кодов в своих приложениях для мобильных устройств.

В процессе разработки собственного приложения для iOS столкнулся с тем, что информации на русском языке по теме обработки QR-кодов на просторах Интернета крайне мало. Разобравшись с самим приложением, решил, что необходимо исправить эту вопиюще несправедливую ситуацию. Под катом Вы найдете описание процесса разработки крайне простого приложения, распознающего QR-коды, и представляющего интерес для начинающих iOS-разработчиков. Данная заметка предполагает наличие базовых знаний особенностей работы в Xcode и программирования под iOS.
Читать дальше →

Mobile Professional Days в Харькове

Время на прочтение1 мин
Количество просмотров944
19 ноября в Харькове состоится конференция Mobile Professional Days, посвященная вопросам создания современных мобильных приложений.

image

Mobile Professional Days – это специализированная конференция для тех, кто профессионально занимается разработкой мобильных приложений, для новичков, которые только планируют развиваться в данной области, а так же всех желающих, кто интересуется современными разработками для мобильных устройств.

Подробнее о конференции

Очистка кэша в iOS 5

Время на прочтение5 мин
Количество просмотров12K


У каждого приложения iOS есть рабочая папка для хранения файлов. Все элементы оттуда, кроме содержимого Caches и tmp, синхронизируются с бэкапом во время соединения с iTunes.

До выхода iOS 5, система никогда не удаляла содержимое Caches и tmp, они были единственным безопасным местом для хранения данных, которые всегда должны быть доступны и в то же время которые можно повторно скачать в случае потери. Таким образом, эти данные не занимали место в бэкапах и не замедляли синхронизацию.
Читать дальше →

Использование ActiveRecord для работы с Core Data

Время на прочтение4 мин
Количество просмотров6.5K
Введение


Active Record — это паттерн проектирования приложений, использующих для хранения информации базу данных. Таблица базы данных отображается в виде класса приложения, а отображением объекта класса является строка таблицы.
Читать дальше →

Automatic Reference Counting: часть 1

Время на прочтение7 мин
Количество просмотров32K
Здравствуйте, коллеги.

Давно читаю блоги и статьи зарубежных разработчиков под iOS. И на днях попалась любопытная, довольно подробная статья об Automatic Reference Counting от разработчика по имени Mike Ash.
Статья довольно большая, потому перевод, сделанный мною, рискну разбить на несколько частей. Надеюсь, что уложусь в 2 части.
Часть первая

Наиболее эффективные методы раскрутки iPad и iPhone приложений на Apple AppStore (Часть 2)

Время на прочтение4 мин
Количество просмотров17K
В предыдущей статье, написанной около 2-х месяцев назад мною были описаны некоторые маркетинговые и рекламные методы раскрутки приложений в AppStore, я также обещал написать, как долго наше приложение находилось в ТОП-10 российского апстора, а также какие дополнительные методы раскрутки были применены, итак все по порядку.
Читать дальше →

Исследование: 20% разработчиков игр для App Store получают 97% всех денег

Время на прочтение7 мин
Количество просмотров13K


19 сентября я запустил опрос среди разработчиков игр для iOS с целью получить статистику по доходам как можно большего числа из них. Стояла задача сформировать реалистичную картину сегодняшнего состояния рынка и поделится этой информацией с сообществом. Меня к этому подвигло обилие статей, описывающих ситуацию в крайностях: “Разработчик сколотил миллионы на iOS играх!” или же “Игра заработала $0 в App Store”.

С мыслью получить объективное состояние дел, 19 сентября 2011 года я запустил семидневный опрос, в котором приняло участие 252 разработчика.
Читать дальше →

Жизненный цикл UIViewController'a

Время на прочтение10 мин
Количество просмотров157K
Большинство прикладных приложения под iOS таким или иным образом используют UIViewController'ы. Там где UIKit фрэймворк — там и UIViewController'ы. Их много, они повсюду, они сидят в засадах и выглядывают из-за каждого угла. Поэтому, любой программист под iOS — будь он зеленым новичком, едва ступившим на тропу программирования, либо матерым профессионалом своего дела, должны знать о UIViewController'aх все.

Причиной написания данной поста является то, что, как оказалось, можно преспокойно программировать под iOS полгода, и не знать полностью о жизненном цикле UIViewcontroller'ов. И на небольших проектах это даже получается. Однако, когда приходится иметь дело с серьезным, достаточно большим проектом, то появляются определенные проблемы с нехваткой памяти, «неправильной» и «непонятной» работой контроллеров, пропажей данных, и еще со многими типичными проблемами, о которых будет написано ниже.

Так вот. В данном посте, я еще раз расскажу о жизненном цикле UIViewController'ов, расскажу о том, что и где стоит делать, и в каком случае. Пост ориентирован на разработчиков разных уровней, так что кто-то узнает для себя что-то новое, а кто-то найдет повод отпинать моменты, на которые стоит обратить внимание Junior'ов в команде.

Всех заинтересовавшихся, прошу
под кат

Трудный путь новичка в топ 5 русского App Store

Время на прочтение5 мин
Количество просмотров5K
Приветствую всех. Являясь большим поклонником продукции одной известной фруктовой компании, решил попробовать свои силы в разработке под iOS. И вот хочу поделиться своим опытом и трудностями, с которыми я столкнулся, во время написания и публикации своего, фактически первого, приложения в App Store. Может быть, мой опыт окажется кому то полезным. А трудностей было предостаточно. В процессе публикации в App Store приложение было 2 раза отклонено и третий раз висело 6 дней в статусе «In Review». В итоге моя настойчивость победила, приложение опубликовали и оно попало в пятерку русского App Store в категорию Top Free iPhone Navigation Apps. И так все по порядку.
Читать дальше →

Ближайшие события

DOOM Classic и Wolfenstein 3D в исходниках

Время на прочтение1 мин
Количество просмотров12K


id Software — компания известная скорее всего всем посетителям Хабрахабра, ведь они стоят за такими монстрами, как: Dangerous Dave, Commander Keen, Wolfenstein, Doom, Heretic, HeXen и т.д. Некоторое время назад, выступая на QuakeCon'е, Джон Кармак обещал выпустить исходные коды Doom 3, но пока что этого не произошло.

Зато сегодня ZeniMax — компания. которой теперь принадлежит id Software (а так же Bethesda), выпустила обновления для Doom Classic и Wolfenstein 3D для iPhone, добавив в них поддержку Retina Display и универсальность (теперь в них можно играть, как на iPhone, так и на iPad), а так же, как это обычно принято в обновлениях, исправив некоторое количество ошибок.

Вместе с этим обновлением компания открывает доступ к текущим исходным кодам этих игр, так что теперь вы можете сделать что-то свое, основываясь на их разработках, или научиться у лучших игроделов из лучших тому, как правильно делать такие игры.

Ссылки в iTunes Store на Doom Classic [$6.99] и Wolfenstein 3D [$1.99].
Ссылки на исходные коды Doom Classic и Wolfenstein 3D.

UPDATE 1: В исходных кодах содержится, собственно, только код; нет звуков и графики.
UPDATE 2: Судя по второму комментарию, даже в id Software работают люди, которым свойственно писать странный код.

Эффективный способ защиты от пиратства

Время на прочтение5 мин
Количество просмотров3.7K
Если вы разработчик ios приложений, то скорее всего, тема пиратства вам знакома, болезненна и малоприятна. Надеюсь, вам будет интересно разобраться как ей препятствовать и что нужно делать, что бы не увидеть свое приложение в репозитории hackulo.us через час после релиза в appstore.
Читать дальше →

Пишем письма из iOS приложения

Время на прочтение5 мин
Количество просмотров5.6K
Проблема

Хочу отправлять письмо из приложения под iOS без выхода из приложения (не использовать mailto URL) и без открытия дополнительного экрана (не использовать MFMailComposeViewController).

Решения

Дорогое: поднять на своем сервере web-сервис, который будет заниматься рассылкой писем, из приложения обращаться к нему.
Дешевое: использовать SMTP клиент внутри своего приложения.

Проблема

Нужно написать свой SMTP клиент

Все уже написано до нас

Jets – Flight & Seat Advisor – приложение для выбора мест в самолетах

Время на прочтение3 мин
Количество просмотров5.2K
image
Promo site

Идея приложения возникла давно, я вынашивал ее больше года, начинал писать самостоятельно, но все не находилось времени и сил по вечерам. В итоге, в какой-то момент собралась команда из 3 человек с горящими глазами, ушли с постоянной работы и серьезно погрузились в проект. Несколько дней тому назад — запустились в Travel разделе.

Совсем вкратце — наше приложение содержит большую базу пассажирских авиакомпаний и их флота. Для каждого из самолетов мы сделали детальные и очень красивые схемы их салонов, на которых показываем расположение классов, рядов, перегородки и прочий интерьер, выделяя цветами «особенные» места.

image

Каждая компания покупает новый самолет на заводе с практически пустым салоном и уже персонально под себя заказывает его «тюнинг», расставляя кресла и кабинки туалетов под свои нужды. Из-за этого, сиденья в пределах одного класса могут весьма сильно отличаться по уровню комфорта. Первый ряд кресел перед аварийными выходами имеет в разы больше места для ног, а у последнего ряда перед туалетами могут быть заблокированы спинки кресел и регулярно толпится народ в очереди. У многих самолетов бывают сплошные участки в корпусе и вместо чудесного вида на горящий двигатель можно попасть на глухую стенку. Нюансов очень много и есть определенная вероятность попасть на кресло с заблокированной спинкой, электроящиком под ногами и полкой для ручной клади занятой спасательными жилетами. Такой 11 часовой трансатлантический перелет запомнится вам надолго. И тут на сцену врываемся мы!
Читать дальше →

От Дублина до Сингапура: история разработки iPad приложения

Время на прочтение5 мин
Количество просмотров4.7K
Привет хаброчеловек!

На днях я выпустил детское приложение-раскраску для iPad Colorific. Разработка затянулась на год, но теперь, когда основная работа завершена, я хочу поделиться некоторыми вынесенными из всей этой истории уроками.



«Баловаться» с Cocoa я начал примерно полгода спустя после того, как у меня появился белый iMac G5 20" в 2005 году. Тогда я потратил на него я почти всю свою месячную зарплату. После 4-х лет на Slackware и Debian Linux макось (на тот момент Tiger) была как глоток свежего воздуха. Дальше баловства дело не заходило. Написал пару утилит для себя на Cocoa, поэксперементировал с AppleScript и отложил это дело в долгий ящик.

В следующий раз я открыл XCode, когда Apple зарелизил свой SDK. Я был полон энтузиазма, ведь они пошли примерно тем путем, о котором я говорил друзьям. Мне всегда не нравилась «анархия» в J2ME разработке, и казалось, что Apple должен пойти по пути Brew от Qualcomm, только сделать это не так «топорно». Собственно всё — среда разработчика XCode, Instruments и App Store казались мне просто идеалом того, как дожен выглядеть мобильный SDK. У меня был совсем небольшой опыт на заре J2ME, и мы даже не могли мечтать о такой инфраструктуре.

Читать дальше →

Паттерны проектирования для iOS разработчиков. Observer, часть I

Время на прочтение8 мин
Количество просмотров22K

Вместо предисловия


Прошло уже 17 лет с тех пор, как вышла легендарная книга Банды Четырех, посвященная Паттернам проектирования (Design patterns). Несмотря на столь солидный срок, тяжело оспорить актуальность описанных в ней методик. Паттерны проектирования живут и развиваются. Их применяют, обсуждают, ругают и хвалят. К сожалению, для многих они до сих пор остаются излишней абстракцией.

Обсуждая разные вопросы программирования с коллегами как в жизни, так и на различных ресурсах, довольно часто приходится объяснять важность того или иного паттерна. Так и родилась идея на конкретных примерах показать, насколько их использование может облегчить жизнь программиста. Даже если речь идет о такой платформе, как iOS.
О том, как Света вышла замуж и чем девушки похожи на футболистов

Маршрут в iOS приложениях

Время на прочтение6 мин
Количество просмотров5.4K
Написав несколько приложений для iPhone, в которых использование карты является одним из главных вариантов использования, я задумался над тем, что куча объектов на карте это очень круто, информативно и наглядно, но нехватает маршрутов от одной точки до другой.
Ниже я поделюсь своим опытом реализации данного use-case’а.
Читать дальше →