Эффективная работа в любой IDE, да и не только в IDE, определяется в немалой степени тем, как много вы используете клавиатурных сокращений и всяческих фич, призванных облегчить вашу жизнь.
В этом посте я попытаюсь поделиться тем, что знаю и использую сам, что накопалось в сети но так же очень рассчитываю на вашу помощь. Поделитесь своими находками и трюками. По результатам думаю сделать какой-то PDF, вроде известного Xcode-рам pdf c шорткатами от Colin Wheeler (не знаете? тогда вот линк)
Читать полностью »
Метка «xcode» - 5
Как облегчить себе жизнь в Xcode. Shortcuts, tips&tricks
2012-07-04 в 8:43, admin, рубрики: apple, ios development, shortcuts, xcode, разработка под iOS, метки: apple, ios development, shortcuts, xcodeКак я Android под Mac OS X собирал
2012-06-02 в 11:41, admin, рубрики: android, linux, mac os x, xcode, Разработка под android, метки: android, linux, mac os x, xcode Одной из задач компании, в которой я работаю, является разработка своей модификации Android, с очень сильным перепиливанием кода ОС. Собственно, этой задачей я и занимаюсь. Так сложилось, что все (ну или почти все) сотрудники работают на маках. Я первое время сидел на Linux, писал себе код, компилял-собирал, и т.д. В принципе, ничего сложного в сборке Андроида из исходников нет — настроить среду, выкачать 14 гигов исходников, поставить собираться и 6 часов заниматься своими делами. Но пару недель назад я пересел на MacBook, и тут-то и началось веселье.
Читать полностью »
Пара слов о Header Map в XCode
2012-05-29 в 22:05, admin, рубрики: xcode, Программирование, разработка под iOS, метки: xcode Семейство языков Си/Objective C/C++ нуждается в препроцессоре. Препроцессор пропускает компилируемый исходник через себя, прежде чем отдать текст на вход компилятору. Пожалуй самая важная часть работы препроцессора заключается в подстановке на место директив содержимого указанного файла. Обычно указывают относительный путь (ex:
stdio.h
, sys/stat.h
). Возникает закономерный вопрос — как препроцессор находит заголовочные файлы?
Классический ответ такой: препроцессор последовательно перебирает пути в INCLUDE_PATH начиная с первого. Относительный путь из директивы include разрешается относительно (sic) папки из INCLUDE_PATH. Если файл не найден, переходим к следующему элементу INCLUDE_PATH. Если INCLUDE_PATH исчерпан, компилятор сообщает об ошибке.
Но Apple как всегда вносит свои коррективы. При сборке в XCode дополнительно используются т.н. header map. Это индекс всех заголовочных файлов в проекте. Если XCode «знает» про foobar.h, то данный файл будет доступен просто по имени (), вне зависимости от фактического размещения на файловой системе.
Это прекрасное решение — до тех пор, пока оно работает как задумано. К сожалению, механизм header map плохо документирован, что не способствует быстрому разрешению проблем. Постараюсь восполнить этот пробел.
Использование Private API в приложениях для App Store
2012-05-15 в 8:06, admin, рубрики: development, hack, iOS, ipad, iphone, mobile development, xcode, кодинг, разработка под iOS, метки: development, hack, iOS, iPad, iPhone, mobile development, xcode, кодингЯ думаю, что большинство iOS разработчиков так или иначе сталкивались с тем, что по правилам Apple не удавалось сделать какие-либо функции. Часто это бывает связано с тем, что определенные методы попали в раздел private. При попытке опубликовать приложение с их использованием последует его отклонение (пункт 2.5 Apple Review Guidelines).
Под катом я расскажу, как можно частично снять это ограничение.
Читать полностью »
Как защитить in-App Purchase от ломалок
2012-05-13 в 11:36, admin, рубрики: apple, in-App Purchase, iOS, xcode, разработка под iOS, метки: in-App Purchase, iOS, xcode До недавнего времени inApp Purchase был достаточно надежным механизмом защиты от взлома приложений. Если разработчик хотел, чтобы его приложение не попадало в список ломаных — он просто выпускал его бесплатным с продажами внутри. Схема работала. Но после появления в Cydia 'iAP Cracker' — ситуация изменилась.
Под катом описан метод, как можно вполне легально обойти эти ломалки.
Читать полностью »
Отрисовка графиков в мобильном приложении
2012-05-10 в 7:44, admin, рубрики: iOS, xcode, разработка под iOS, метки: iOS, xcodeВозможно, что в этом посте будет мало чего-то нового для большинства читателей, но этот пост будет полезен новичкам.
Итак, я расскажу об отрисовке графиков в мобильном приложении.
Задача
Нам потребовалось сделать отображение графиков нагрузки на разные элементы VPS (RAM, CPU, HDD, Траффик). После раздумий было решено, что график должен:
- При необходимости скроллится по горизонтали
- Автоматически менять маштаб (в зависимости от максимальной величины)
- Подбирать аннотации по вертикали
- Уметь получить аннотации по горизонтали из массива и расставить под указанными точками
- При необходимости заполнять цветом площадь под графиком
Если интересно, то добро пожаловать под кат.
Читать полностью »
Установка симулятора iOS 4.2 в Xcode 4.3
2012-05-04 в 19:55, admin, рубрики: ios simulator, xcode, Блог компании «ООО «Рус Визардс»», разработка под iOS, метки: ios simulator, xcode Обновившись до Xcode 4.3 можно обнаружить, что установка iOS Simulator 4.2 из самого Xcode недоступна. Тем не менее, если в вашем проекте есть необходимость в данном симуляторе, то простая инструкция по установке ниже.
Читать полностью »
Задача Санта-Клауса и практическая логистика
2012-04-30 в 17:27, admin, рубрики: iOS SDK, objective-c, xcode, Алгоритмы, параллельные вычисления, потоки, Программирование, процессы, разработка под iOS, метки: iOS SDK, objective-c, xcode, параллельные вычисления, потоки, Программирование, процессы
Известно, что только 5% программистов в состоянии решать задачи многопоточного программирования. А в месте с тем, с ростом количество ядер даже у мобильных устройств потребность в использовании нескольких нитей возрастает многократно. С каждым днем появляются как новые языки программирования, специально предназначенные для решения специфических задач параллельного программирования, так и в уже хорошо известных и широко применяемых решениях появляются методы, которые не только облегчают понимание, но и сводят решение задачи к своеобразной поэзии программного кода.
Читая книгу “Идеальный код” под редакцией Энди Орама и Грега Уилсона мне довелось натолкнуться на интереснейшую задачу в главе посвященной параллельной обработке (гл. 24. стр. 444). В ней автор, Саймон Пейтон Джоунс, приводит решение на языке Haskell. Там же он утверждает, что существуют решения задачи Сата Клауса для языков Ada95 и Polyphonic C#. В силу профессиональных интересов несколько ранее мне приходилось обсуждать с коллегами возможности многопоточной Apple реализации для языка Objective-C.
Считается, что программировать нужно на уровне абстракций, а не “на языке”, но с тем же успехом можно искать красоту поэзии в эмоциях, а не в изяществе слога, выраженного посредством языка. Под катом предлагаю вместе со мной спеть песню тем, для кого языковая выразительность не пустой звук, а мелодия, будоражущая воображение.
Читать полностью »
Лёгкая кастомизация UITableView
2012-04-23 в 6:01, admin, рубрики: Cocoa, ios development, objective-c, UITableView, UITableViewCell, xcode, интерфейс, Песочница, разработка под iOS, метки: Cocoa, ios development, objective-c, UITableView, UITableViewCell, xcode, интерфейсНачиная писать приложения для iOS, невольно берёшь в пример самые крутые из уже созданных: Twitter, iBooks, Find My Friends, The Rules и т.д. Все эти приложения объединяет одно — нестандартный интерфейс. И это не тот нестандартный интерфейс, который получается, например, при портировании приложения с Windows Mobile, а именно красивый интерфейс, соответствующий iOS Human Interface Guidelines.
И вот, когда я начинал свой тернистый путь iOS-разработчика, передо мной встала довольно-таки нетривиальная на тот момент задача: сделать нестандартный UITableView.
Читать полностью »
Установка Xcode 4.2 на Snow Leopard
2012-04-18 в 15:44, admin, рубрики: apple, snow leopard, xcode, метки: apple, snow leopard, xcode Казалось бы — все это делали в прошлом году и никаких проблем это вызвать не должно. Но не тут-то было. Сегодня возникла необходимость восстановить систему из бекапа, а там старый Xcode. Вроде не велика проблема: учетка разработчика в порядке — заходи на developer.apple.com/xcode и качай. Но там Xcode 4.3.2, а он, как известно, ставится только на Lion…
Читать полностью »