Как стать автором
Поиск
Написать публикацию
Обновить
39.98

iOS *

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

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

Магия в рантайме: меняем Objective-C метод на лету

Время на прочтение8 мин
Количество просмотров6.5K
Читая Mac OS X 10.6 Reference Library, я испытал смешанные эмоции: столько новых возможностей, но если их использовать, программы не смогут запуститься на PowerPC маках, и к тому же не все захотят ставить Снежного Барса, если их вполне устраивает Лео. Самым простым решением кажется не использовать эти возможности, но это значит ограничить себя. Не знаю как вы, но я не люблю, если меня ограничивают. Хочется чтобы программа использовала все преимущества Снежного Барса, но в то же время могла работать на прежней версии Mac OS X. Возможно ли это?
Читать дальше →

AppStore. Как Bills for iPad стала №1 в США

Время на прочтение8 мин
Количество просмотров4.2K
Опыт от тех, кто создал самую продаваемую программу для iPad в США.

Есть много статей о том как зарабатывать деньги на мобильных приложениях в AppStore и Android market. Но сколько разработчиков реально были наверху? Наша программа Bills for iPad в период с 26 по 29 июня 2010 июня была самой продаваемой в AppStore в США программой для iPad.
image

Как зарабатывать в AppStore? Вот механизмы, которые доступны:
  • Продажа программ.
  • Внутренние покупки
  • Реклама

AppStore, по-моему мнению, нацелен именно на доходы от “продажи программ”. Два главных рейтинга, Топ самых скачиваемых программ (Top paid) и Топ самых доходных программ (Top grossing), раздел “новое”, а также разделы AppStore, где Apple выделяет новые интересные программы — все это мотивирует на создание новых, лучших продуктов. Отсюда такое громадное количество программ в магазине — свыше 300,000.
Читать дальше →

Objective-C для C# разработчиков

Время на прочтение5 мин
Количество просмотров20K
«Если единственный язык, который вы знаете — это Java или C#, я не думаю, что вы профессиональный программист — вы как молодой плотник, который пока работал только с одним видом дерева.»
Дядя Боб


Несколько месяцев назад я начал разрабатывать приложения для iPhone. Переключение с платформы .NET и C# на Cocoa и Objective-C проходило не без приключений, но было достаточно интересным и познавательным. Скоро мне предстоит помогать осваивать новую платформу и другим разработчикам нашей компании. Поэтому решил написать серию вводных заметок, которые, надеюсь, сделают этот переход более плавным.

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

История одной игры, или звонок из Купертино

Время на прочтение5 мин
Количество просмотров821
Внимание! Топик восстановлен. Кто не успел ознакомиться — welcome, кто хотел задать вопросы — я готов ответить.

Сегодня мне бы хотелось рассказать не просто об одном, надеюсь, небезынтересном проекте, но и о том, сколь забавны бывают цензоры Apple, когда встречают что-то нестандартное.
Читать дальше →

Предзаполнение базы данных Core Data

Время на прочтение8 мин
Количество просмотров5.2K
image Часто для работы iPhone/iPad приложений необходим некоторый «дефолтовый» набор данных в базе. К сожалению, Apple стандартных средств предзаполнения базы приложения разработчикам не предоставляет.
Если необходимое количество данных невелико, то их можно подгрузить в базу во время старта приложения. Если же вам для работы приложения нужен большой объем исходной информации, то такое решение не подойдет, заставлять ждать пользователей пока закончатся все операции подгрузки — это моветон, да и заказчик, увидев как долго загружается ваше приложение, может пересмотреть планы по будущему сотрудничеству.

В этой статье я расскажу как можно быстро предзаполнить sqlite базу приложения, использующего Core Data.

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

iOS SDK — CoreAnimation, программируем красивые кнопки

Время на прочтение3 мин
Количество просмотров5.2K
Многие наверняка сталкивались с необходимостью быстрого создания контролов в мобильном пользовательском интерфейсе. Рассмотрим стандартные кнопки UIButton. Базовый контрол мало устраивает взыскательного заказчика и зачастую стандартное решение, это натягивание на кнопки битмапов состояния. Растянутая ли это картинка или целиком вырезаная кнопка — решение требует дополнительных временных затрат на дизайн пользовательского интерфейса. Хорошо было бы иметь универсальный контрол, с более широкими визуальными возможностями, чем базовый UIButton.
Читать дальше →

Objective-C с нуля

Время на прочтение23 мин
Количество просмотров442K
У любого желающего писать программы для продукции фирмы Apple в жизни наступает такой момент, когда ему приходиться изучить новый язык программирования — Objective-C. Когда-то этот счастливый момент постиг и меня. А чтобы лучше запомнить основные особенности этого языка, решил законспектировать свои мысли во время осмысления его документации, которыми и делюсь с вами.
Читать дальше →

Новичкам в программировании под Mac/iPhone: смотрите видеоролики от эпла под Маком — сможете увидеть субтитры! (а также несколько самых важных ссылок)

Время на прочтение2 мин
Количество просмотров7.3K
По моему мнению, осваивать новые фреймворки при программирования под айфон (и, возможно, под мак) крайне удобно, посмотрев про них видеоролики, лежащие бесплатно в iTunes University (каждый длиной около часа, их штук 50). После просмотра видеоролика в голове создается четкая картина, что с чем связано и как что вызывает, какие у классов есть возможности, и после этого достаточно reference, что встроен в Xcode, чтобы посмотреть прототипы методов и имена свойств. IMHO, без этих видео, используя лишь reference и guide и примеры, разобраться в том же фреймворке на порядки сложнее и дольше (особенно во всяких, связанных с видео и аудио).

Все время смотрел эти видеоролики на айфоне во время поездок на транспорте (ну и иногда под виндой, используя quicktime player v 7.6.6 — это практически текущая версия). Недавно первый раз запустил проигрывание видеоролика под макосью, и по доброму офигел — у них, оказывается, есть субтитры на английском! Это крайне удобно для тех, кто плохо понимает английский на слух.

UPD: На айфоне и айпэде субтитры тоже можно включить!!! Ткните на кнопку слева от слайдера уровня громкости.

Надеюсь, кому-то это поможет (особенно тем, кто еще не имеет комп с макосью, но подумывает о разработке под айфон и знакомится с документацией).

Ну и любезно предоставленная коллекция ссылок для начинающих от xzDeveloper — что почитать, что посмотреть (в порядке удаления от первоисточника):

Success Stories. Создание успешных приложений для iPhone/iPad

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


21 октября 2010 года (четверг) с 18.30 до 21.30 на базе Бизнес-инкубатора ГУ Высшей школы Экономики www.hse-inc.ru пройдёт очередная встреча Russian Apple Developer User Group. Для участия во встрече необходимо зарегистрироваться по ссылке, так как вход в здания ГУ-ВШЭ осуществляется строго по пропускам.

На прошлой встрече участники выразили желание услышать истории успеха, связанные с разработкой и выводом на рынок приложений под iPhone/iPad, непосредственно от их создателей, и 21 октября вы услышите несколько таких историй. Среди них:
  • Abbyy о приложении «Business Card Reader» (Ольга Толстунова)
  • Crystal Reality о приложении «Crystal TV» (Михаил Филиппович)
  • XZone Software o приложении «Мобильный Баланс» (Андрей Останин)
  • Paragon Software о приложении SlovoEd (электронный словарь) (Дмитрий Бехтерев)
По окончании встречи состоится afterparty в кафе «Дача на Покровке».

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

Разработка приложения для Racios.com

Время на прочтение1 мин
Количество просмотров762
iPhone приложение для Racios (http://habrahabr.ru/blogs/i_am_advertising/90750/) разрабатывает один из уважаемых пользователей Habra, имя его называть не буду, т.к. он реализовав более 70% работы, по неведомым для меня причинам пропал и на связь не выходит…
Читать дальше →

Мысли дизайнера о разработке для iPad-а

Время на прочтение3 мин
Количество просмотров1.3K
Я занимаюсь веб-дизайном уже 15 лет, а полиграфией еще дольше. Последние несколько месяцев я работал на издательство MagCloud над их приложением для iPad-а (доступно на «iTunes») вместе с группой чрезвычайно талантливых людей. И этот опыт не имел ничего общего с тем, что я делал как дизайнер ранее. Вот несколько вещей, которым я научился.
Читать дальше →

R.I.P. «Ну, Погоди!» или повесть о копирайте

Время на прочтение3 мин
Количество просмотров15K
Эта история не грустная, не поучительная и не громкая.
Это просто реальный рассказ о судьбе одного iPhone приложения.


Если вы начинающий разработчик под iPhone (или другую мобильную платформу) и вам в голову пришла идея вроде «а не сделать ли мне вот эту игрушку из моего детсва», то статья может оказаться полезной для вас.

Если вы просто любите читать о фейлах других, тоже добро пожаловать под кат.
Читать дальше →

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

Оптимизация ПО для iPhone: живой пример

Время на прочтение7 мин
Количество просмотров2.8K
Программирование на платформе iOS (той, что еще недавно называлась iPhone OS) – странное сочетание радости от плодотворной работы и муки плавания против течения. У каждого разработчика свое мнение относительно того, какая из этих компонент преобладает. Лично мне это занятие нравится, поэтому мне показалось уместным поделиться впечатлениями от процесса работы над очередным проектом.

В конце марта мне предложили написать мобильную версию Bookmate для iPhone. Дизайн большей части приложения был уже готов в виде толстенного PSD, на стороне сервера работа кипела, мне же оставалось, как говорится, «всего лишь» написать клиентскую часть на Objective-C.

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

Кому в App Store жить хорошо. Магазинчик программ «У Стиви» глазами разработчика

Время на прочтение10 мин
Количество просмотров6.5K
В этой статье постараюсь кратко рассказать про свой полуторалетний опыт разработки под iPhone. И о том, кому же полезен App Store.

Часть 1. Действующие лица


Независимый разработчик


Моя позиция такова, и, надеюсь, многие согласятся, что успешный человек — это тот, кто занимается любимым делом, которое приносит доход, на который можно не только жить, но и отдыхать от работы. То есть, его трудовой вклад должен окупаться настолько, чтобы он полностью себя обеспечивал. Кроме дохода еще требуется саморазвитие, чтобы не отставать от темпов роста отрасли, быть всегда во всеоружии, насколько это возможно, чтобы не растерять главное: опыт, навыки, знания.

Много ли таких среди инди-разработчиков? Мне кажется, что нет. Напротив, даже очень и очень мало. Особенно в нашей стране. Попробуем разобраться, почему.

Многие слышали success story о том, как молодой человек загорается желанием и за неделю «в гараже» выдает на-гора супер-проект, о котором пишут новостные ленты, пестрит твиттер, который попадает в топы категорий, подкатегорий.

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

Удача и провал в AppStore

Время на прочтение4 мин
Количество просмотров3.7K
На волне повышенного внимания к мобильному софту, и в частности к App Store, мы тоже решили попробовать свои силы в этой хаотичной, на первый взгляд, массе. iPhone есть, MacBook есть, остается только выбрать что написать. Требования простые: это должно быть просто, это не должно занять много времени и это должно быть дешево. И еще очень хотелось написать такое, что и самим пригодится. Но все пошло не совсем так, как мы предполагали.
Под катом описание того, как мы все делали, рекламировали и что в итоге получилось.

Приложение «Хабрахабр» для iPhone

Время на прочтение1 мин
Количество просмотров947
Захотел вчера поставить приложение на свой телефон и обнаружил что оно только для русского App Store. У меня американский акк, я его юзаю потому что там и приложений больше и возможности App Store на порядок выше. Кто-нибудь знает почему только для русского?

UPD: я, собственно, хотел узнать, в чем трудность поместить приложение в американский App Store. МОжет быть кто-то знает технологию и расскажет о подводных камнях и трудностях процесса.

UPD2: у меня 2 акка: и русский, и американский. Не удобно обновлять программы, постоянно перелогиниваясь.

Авторотация сложных интерфейсов в программах для iPad

Время на прочтение5 мин
Количество просмотров4.6K
Большая часть программ для iPhone и iPod touch поддерживают только портретную ориентацию. Многие разработчики даже не задумывались о том, чтобы добавить ландшафтную (альбомную) ориентацию там, где она действительно нужна. Не исключение и компания Apple, которая в iPhone OS 2.x подавала не самые лучшие примеры, не реализовывая поддержку ландшафтной (альбомной) ориентации в важных системных программах (в iPhone OS 3.x компания исправила свою ошибку).

С приходом iPad ситуация изменилась. Компания Apple обязала всех разработчиков поддерживать все ориентации устройства в программах для iPad. Естественно, могут быть исключения, например, игры. Но программы, которые не имеют жёсткой привязки (функциональной) к ориентации, должны быть дружелюбны к пользователю в любом положении устройства.

С простыми интерфейсами сложностей никаких нет. Объектам класса UIView задаётся необходимое свойство autoresizingMask, которое описывает изменение фрейма. К сложным интерфейсами такой метод уже не подходит.
Читать дальше →

Парсинг XML в NSDictionary при помощи libxml

Время на прочтение3 мин
Количество просмотров5.1K
В проекте для iPhone столкнулся с необходимостью парсинга большого количества xml ответов от сервера. Хотел бы поделиться своим решением парсинга XML в NSDictionary.
Читать дальше →

Подборка полезных репозиториев на GitHub

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

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

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