Рубрика «xcode» - 19

AppCode 1.6: что нового?Команда AppCode рада представить вам новую версию нашей интегрированной среды разработки для Objective-C — AppCode 1.6 .

Теперь AppCode гораздо быстрее работает с большими проектами, полностью совместим с Xcode 4.4 и Xcode 4.5 preview, поддерживает проекты CocoaPods, проектные и файловые шаблоны сторонних разработчиков, а также все новые функции Objective-C.
Читать полностью »

Многие разработчики ожидают новых проблем от выхода нового iPhone, так как уже никто не сомневается, что разрешение его экрана будет больше, чем у iPhone 4 и 4S. С каждым днём поступает всё больше подтверждений, что новый айфон обзаведется экраном с разрешением 640x1136, то есть вытянется в высоту.
Разработчик, не бойся нового iPhone

И вот еще одно подтверждение: программист Cédric Luthi с ником 0xced опубликовал в своем блоге запись, проливающую свет на то, как были сделаны скриншоты iOS Simulator из вчерашней новости с 9to5Mac. Простое изменение конфигурационных файлов iOS Simulator приводит к его запуску в нестандартном на данный момент разрешении 640x1136 (можно и в других, как я понял).
Читать полностью »

image
Эффективная работа в любой IDE, да и не только в IDE, определяется в немалой степени тем, как много вы используете клавиатурных сокращений и всяческих фич, призванных облегчить вашу жизнь.
В этом посте я попытаюсь поделиться тем, что знаю и использую сам, что накопалось в сети но так же очень рассчитываю на вашу помощь. Поделитесь своими находками и трюками. По результатам думаю сделать какой-то PDF, вроде известного Xcode-рам pdf c шорткатами от Colin Wheeler (не знаете? тогда вот линк)
Читать полностью »

Одной из задач компании, в которой я работаю, является разработка своей модификации Android, с очень сильным перепиливанием кода ОС. Собственно, этой задачей я и занимаюсь. Так сложилось, что все (ну или почти все) сотрудники работают на маках. Я первое время сидел на Linux, писал себе код, компилял-собирал, и т.д. В принципе, ничего сложного в сборке Андроида из исходников нет — настроить среду, выкачать 14 гигов исходников, поставить собираться и 6 часов заниматься своими делами. Но пару недель назад я пересел на MacBook, и тут-то и началось веселье.
Читать полностью »

Семейство языков Си/Objective C/C++ нуждается в препроцессоре. Препроцессор пропускает компилируемый исходник через себя, прежде чем отдать текст на вход компилятору. Пожалуй самая важная часть работы препроцессора заключается в подстановке на место директив #include<имя-файла> содержимого указанного файла. Обычно указывают относительный путь (ex: stdio.h, sys/stat.h). Возникает закономерный вопрос — как препроцессор находит заголовочные файлы?

Классический ответ такой: препроцессор последовательно перебирает пути в INCLUDE_PATH начиная с первого. Относительный путь из директивы include разрешается относительно (sic) папки из INCLUDE_PATH. Если файл не найден, переходим к следующему элементу INCLUDE_PATH. Если INCLUDE_PATH исчерпан, компилятор сообщает об ошибке.

Но Apple как всегда вносит свои коррективы. При сборке в XCode дополнительно используются т.н. header map. Это индекс всех заголовочных файлов в проекте. Если XCode «знает» про foobar.h, то данный файл будет доступен просто по имени (#include<foobar.h>), вне зависимости от фактического размещения на файловой системе.

Это прекрасное решение — до тех пор, пока оно работает как задумано. К сожалению, механизм header map плохо документирован, что не способствует быстрому разрешению проблем. Постараюсь восполнить этот пробел.

Читать полностью »

Я думаю, что большинство iOS разработчиков так или иначе сталкивались с тем, что по правилам Apple не удавалось сделать какие-либо функции. Часто это бывает связано с тем, что определенные методы попали в раздел private. При попытке опубликовать приложение с их использованием последует его отклонение (пункт 2.5 Apple Review Guidelines).

Использование Private API в приложениях для App Store

Под катом я расскажу, как можно частично снять это ограничение.
Читать полностью »

До недавнего времени inApp Purchase был достаточно надежным механизмом защиты от взлома приложений. Если разработчик хотел, чтобы его приложение не попадало в список ломаных — он просто выпускал его бесплатным с продажами внутри. Схема работала. Но после появления в Cydia 'iAP Cracker' — ситуация изменилась.
Под катом описан метод, как можно вполне легально обойти эти ломалки.
Читать полностью »

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

image

Итак, я расскажу об отрисовке графиков в мобильном приложении.

Задача

Нам потребовалось сделать отображение графиков нагрузки на разные элементы VPS (RAM, CPU, HDD, Траффик). После раздумий было решено, что график должен:

  • При необходимости скроллится по горизонтали
  • Автоматически менять маштаб (в зависимости от максимальной величины)
  • Подбирать аннотации по вертикали
  • Уметь получить аннотации по горизонтали из массива и расставить под указанными точками
  • При необходимости заполнять цветом площадь под графиком

Если интересно, то добро пожаловать под кат.
Читать полностью »

Обновившись до Xcode 4.3 можно обнаружить, что установка iOS Simulator 4.2 из самого Xcode недоступна. Тем не менее, если в вашем проекте есть необходимость в данном симуляторе, то простая инструкция по установке ниже.
Читать полностью »

image
Известно, что только 5% программистов в состоянии решать задачи многопоточного программирования. А в месте с тем, с ростом количество ядер даже у мобильных устройств потребность в использовании нескольких нитей возрастает многократно. С каждым днем появляются как новые языки программирования, специально предназначенные для решения специфических задач параллельного программирования, так и в уже хорошо известных и широко применяемых решениях появляются методы, которые не только облегчают понимание, но и сводят решение задачи к своеобразной поэзии программного кода.

image
Читая книгу “Идеальный код” под редакцией Энди Орама и Грега Уилсона мне довелось натолкнуться на интереснейшую задачу в главе посвященной параллельной обработке (гл. 24. стр. 444). В ней автор, Саймон Пейтон Джоунс, приводит решение на языке Haskell. Там же он утверждает, что существуют решения задачи Сата Клауса для языков Ada95 и Polyphonic C#. В силу профессиональных интересов несколько ранее мне приходилось обсуждать с коллегами возможности многопоточной Apple реализации для языка Objective-C.

Считается, что программировать нужно на уровне абстракций, а не “на языке”, но с тем же успехом можно искать красоту поэзии в эмоциях, а не в изяществе слога, выраженного посредством языка. Под катом предлагаю вместе со мной спеть песню тем, для кого языковая выразительность не пустой звук, а мелодия, будоражущая воображение.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js