До недавнего времени inApp Purchase был достаточно надежным механизмом защиты от взлома приложений. Если разработчик хотел, чтобы его приложение не попадало в список ломаных — он просто выпускал его бесплатным с продажами внутри. Схема работала. Но после появления в Cydia 'iAP Cracker' — ситуация изменилась.
Под катом описан метод, как можно вполне легально обойти эти ломалки.
Читать полностью »
Рубрика «xcode» - 21
Как защитить in-App Purchase от ломалок
2012-05-13 в 11:36, admin, рубрики: apple, in-App Purchase, iOS, xcode, разработка под iOS, метки: in-App Purchase, iOS, xcodeОтрисовка графиков в мобильном приложении
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…
Читать полностью »
Вышла версия Xcode 4.3.2
2012-03-22 в 7:24, admin, рубрики: apple, gcc, iOS, mac os x, xcode, разработка под iOS, метки: apple, gcc, iOS, mac os x, xcode 
Кратко об изменениях (из описания в AppStore):
- Включает в себя SDK для iOS 5.1 и MacOSX 10.7
- Подписывание программ с помощью Apple Developer ID
- Консольные утилиты устанавливаются из меню загрузоксм. примечания
- Instruments, File Merge и другие утилиты теперь запускаются прямо из Xcode
- Утилита миграции на ARC может преобразовывать код из retain/release и GC кода
- Багфиксы и стабильность — как уж водится
Версия для Mac OS X Lion доступна бесплатно в AppStore. Версии для Snow Leopard, видимо, не будет.
Читать полностью »
О форматировании кода и User Scripts в Xcode 4
2012-03-21 в 21:13, admin, рубрики: integration, iphone development, objective-c, xcode, разработка под iOS, метки: integration, iphone development, objective-c, xcode
Когда человеку надоедает делать рутинную работу, у него возникает дикое желание от этой работы избавиться. Однако, в реальной жизни избавиться от нее не так просто, и ее все, же надо делать. В зависимости от вида работы и от ее количества, можно поступать по-разному. Можно продолжать выполнять уже заученные действия, можно уйти в себя и копить злость на всех и вся, на этот мир, на начальника, на PM'a, на <вписать свою причину> А можно попытаться эту рутину автоматизировать.
А пост будет о конкретной задаче, которую надо автоматизировать(Code Formatting) и о том, как все-таки расширить Xcode всякими полезными вкусностями для дальнейших автоматизаций. В прошлый раз это был Copy Paste Detector. А теперь пришло время Code-Formattera. Скажу сразу, что в здесь не поднимается вопрос, нужен ли автоматический Code-Formatter. Предполагается, что Вам он нужен. Если, все же не нужен — можно заглянуть под кат, чтобы вспомнить про возможность использовать внешние скрипты в Xcode. Читать полностью »
Программирование / XCode 4.3: теперь можно ставить компилятор отдельно
2012-02-26 в 15:18, admin, рубрики: mac os, ruby, xcode, метки: mac os, ruby, xcodeИзучая список изменений в обновившейся на днях XCode я заметил интересное — «command-line tools» теперь не входят в комплект и устанавливаются отдеьно, в настройках. Анализатор TCP и гугление показали, что установить эти самые «command line tools» теперь можно не только из XCode, но и отдельно от него. Что это значит для пользователей? Теперь для использования macports или сборки себе последней версии Ruby нет необходимости качать несколько гигабайт XCode — достаточно скачать около 160 мегабайт «command-line tools» и к нашим услугам вполне себе полноценный gcc, make и прочий toolchain. Под катом инструкция куда кликать и пример сборки последней ruby 1.9.3-p125 с поддержкой Tk
<a rel="nofollow"Читать полностью »
Разработка под Apple iOS / Интегрируем Copy-Paste-Detection в Xcode, и не только
2012-02-09 в 6:53, admin, рубрики: continious integration, copy-paste, iphone, iphone development, xcode, метки: continious integration, copy-paste, iPhone, iphone development, xcode
Сегодня ночью, проводя очередной code-review в наших проектах, наткнулся на большой кусок проявления чистейшего, кристализованного копипаста. Он не очень пришелся мне по душе, и как-то сразу всплыл вопрос:" А много ли копипаста у нас в проектах"? Google is my friend, поэтому решение нашлось очень быстро у jkennedy1980, который использовал CPD (copy paste detector), который входит в PMD (Pretty Much Done || Project Mess Detector || Programming Mistake Detector || ... ). В общем случае, CPD умеет находить copy-paste сходу для ряда языков(cpp, cs, java, php, ruby, ecmascript) и относительно легко расширяется, но мне же был нужен Objective-C. Как раз такой вариант и был у jkennedy1980, который использовал CPD в автоматической сборке jenkins'ом. Это в общемЧитать полностью »
