iPhone для предприятий, iPhone SDK и App Store

7

Любовь убивает: iPhone был слишком дорог для Apple, и его решили уберечь от опасностей жестокого мира. Добились прямо противоположного. Взломы, побеги из тюрьмы и прочая уголовная романтика. Эпидемий цифровой нечисти пока не было – но это было чудом, рано или поздно они не могли не случиться. iPhone оказался на грани жизни и смерти…

Иначе и быть не могло: тем чья профессия – создавать миры и жизнь в этих мирах (это я о программистах) показали безумно привлекательный артефакт: карманный полноценный компьютер с невероятным интерфейсом, но тут же заперли его на ключ, и предложили…

Писать web-приложения, потому что Mobile Safari – это тот же Safari, что и в Mac OS X, и в Windows (что было еще и не совсем правдой). Поэтому никакой SDK не нужен. Проблем с распространением – никаких. Обновления – в любой момент, и они моментальны.

Ничего не имею против web-приложений, но если для волнующе интересного устройства разрешено писать только их – что может остановить желающих вырваться за пределы этих ограничений?

MacWorld (журнал) сообщал о недовольстве разработчиков по этому поводу. Это хуже чем неправда – это ошибка. То что случилось иначе чем бунтом не назовешь.

Apple владела всеми правами на iPhone, она его выстрадала, вложила в него душу. iPhone стоил создававшим его инженерам, дизайнерам и маркетологам разрушенных семей, дети лишенные внимания родителей страдали и связывались с плохими ровесниками, здоровью аврал длиной в два с половиной года не мог не нанести ущерб… Но вырвавшись на волю, и попав в руки миллионов людей, iPhone стал уже их достоянием, гордостью, тем что любят.

Запреты (из самых лучших побуждений) никогда не решают проблем. Они создают новые, более опасные и неустранимые. Создатели миров и жизни в этих мирах не без труда, но в потрясающе короткие сроки, обошли запреты, и…

Это третья часть серии про iPhone и ему подобных, предыдущие части здесь:

Первая часть: MacWorld Expo 2007;
Вторая часть: Touch-интерфейс приходит на iPod.

Первобытные джунгли

Через несколько месяцев вокруг iPhone выросла целая индустрия.

SoC (System-on-Chip) Samsung S5L8900 (а не Samsung S3C6400, как предполагалось), на ядре ARM1176JZ(F)-S v1.0 (штатная тактовая частота – 620 МГц, в iPhone снижена до 412 МГц), был хорошо известен. Для “программирования наоборот” (мне не нравится ни один из стандартных переводов термина “reverse engineering”, готов понести…) не было никаких препятствий.

Не было даже необходимости копаться в машинных кодах – существовавшие программы переводили их в легко читаемые инструкции ассемблера. Понять ассемблер – адский труд, но если очень нужно, нет ничего невозможного.

Помимо ARM1176JZ(F)-S, в крошечном карманном компьютере было еще пять или шесть ядер различного назначения – и, что забавно, все из них, которые удалось опознать, были разработаны в Великобритании. Как, кстати, и сам ARM1176JZ(F)-S.

Программа “Hello World”, с подробным описанием и объяснением всех шагов, необходимых для её повторения, появилась в сети в конце июля 2007, через месяц после выхода iPhone. Эта страница стала одной из самых посещаемых в сети. Сотни тысяч жаждущих прорвать блокаду! Программа была написана не на Mac’е.

Вскоре в сети появились сотни (если не тысячи) публикаций на эту тему, описания iPhone OS и “цепочек инструментов” (toolchain) для написания программ для его системы. Проще всего эту цепочку было воссоздать в Windows. “Цепочек” были дюжины, их описания были необъятными, в них было много недосказанностей и ошибок, но…

Существовали “цепочки” и для разных Unix’ов (включая Mac OS X), но главной платформой для разработки программного обеспечения, с огромным отрывом, стали Windows PC. Едва ли это радовало Apple.

К концу лета появились сотни программ, авторы которых не признавали никаких запретов, самого разного назначения. Некоторые из программ сжигали внутренности iPhone – те кто программировал для него в Apple соблюдали очень строгие правила, о которых вольные творцы даже не догадывались. iPhone был абсолютно беззащитен.

Случилось именно то, от чего iPhone хотели уберечь, только уже в катастрофических масштабах.

17 октября 2007 года Apple опубликовала письмо Джобса, в котором он объяснил мотивы принятия ошибочного решения – и пообещал исправиться. SDK будет открыт, в феврале следующего года…

Помните фильм “Widow Maker” (“Делатель вдов”) – Apple справлялась с этим эффективнее чем любая атомная подводная лодка, на порядок. И снова был аврал.

6 марта 2008 года, четверг, “яблочная” ратуша в кампусе Apple, SDK

В 10 утра по тихоокеанскому времени, в ратуше (Town Hall) Apple, состоялась пресс-конференция, которую Стив назвал Apple Special Event, но официальное она называлась iPhone Software Roadmap Event (соединяйте “дорожную карту программного обеспечения для iPhone” и “событие” как хотите, суть я перевел).

Вот видео (длительность – 01:17:53):

Вплоть до 00:17:17 обсуждались темы, не имеющие отношения к SDK.

Стив рассказал об успехах iPhone: второе место на американском рынке смартфонов, первое занимала RIM с 41%, у Apple – 28%, и достигнуто это всего за 8 месяцев. 71% посещений Интернет с мобильных устройств – из Mobile Safari, то есть у iPhone.

Потом были минут 10 Фила Шиллера: интеграция в iPhone Active Link и MS Exchаnge, и все про iPhone для предприятий. Впечатляло, но это не наша тема.

А в начале 17-й минуты Фила сменил Скотт Форстолл, и началось главное. Начал он с web-приложений, некоторые из которых и в самом деле были шедеврами.

А потом… с 00:19:49 до 01:02:28 Скотт описывал iPhone SDK как место для увлекательных и легких побед. О том что это легко и просто, говорил сам Скотт, а приглашенные испытать iPhone SDK “на вкус” программисты из нескольких компаний повторяли это как заклинание (иначе, видимо, их не выпустили бы из кампуса)…

О том, как втискивали Mac OS X в устройство с 128 Мегабайтами оперативной памяти и с тактовой частотой в 412 МГц, да еще в условиях жесточайшего дефицита энергии, напишу в другой раз. Это отдельная тема.

Из того, что Скотт рассказал про SDK (и iPhone OS, которая еще так не называлась, хоть и была версией 2.0), многого еще не было. Interface Builder в разработке для iPhone в Apple не применялся. Переработка IB требовала много времени, решили обойтись без него.

Interface Builder для iPhone OS появился, в предпоследней бета-версии SDK (если мне не изменяет память). Его интеграция с iPhone была… ужасной. Но, с помощью специальной лексики и музыкальных инструментов народов Севера, им можно было пользоваться…

Дефекты рождения дорого обошлись IB – многие предпочитали им не пользоваться, так как не хотели тратить время на изучение его причуд, считали его сковывающим полет их фантазии и ограничивающим их свободу. Особенно те, кто начинал писать программы для iPhone еще в эпоху “вольных стрелков”. Предрассудки, но…

И с интеграцией Instruments было не все в порядке. И сам SDK требовал массы доработок, исправлений и уточнений…

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

Скачать SDK и попробовать его в деле (в симуляторе)… круто – но мне для этого пришлось срочно покупать Intel Mac. Моему PowerPC разработка для iPhone была недоступна.

А потом, начиная с 01:02:28 в ролике, Стив презентовал самое важное и судьбоносное…

App Store

На каждом устройстве (iPhone и iPod touch) будет программа, в которой ваше приложение будет доступно на каждом устройстве.

Купить программу можно будет и в iTunes Store, на Mac или PC (если размер программы превышал какой-то предел, в 10 или 20 Мегабайт, купить её можно было только через iTunes).

Все заботы, связанные с оплатой приобретаемых пользователями программ, берет на себя Apple (если вы пробовали решать эти проблемы сами, вы поймете мою радость по этому поводу).

Автор сам решает, за сколько будет продаваться его продукт (от 0,99 до 999,99 долларов, с шагом в 1 доллар – это я от себя).

Автору 70% (выплата раз в месяц, если сумма превышает какой-то минимум), Apple – 30%, на обслуживание App Store. Компания не собирается зарабатывать на App Store.

Во всех случаях, с которыми я сталкивался до этого, мне – автору – полагалось только 30 или 40% от выручки, так что – “в плюс”.

Бесплатные программы Apple будет обслуживать бесплатно. Тоже “в плюс”.

Ну и несколько обстоятельств “в минус”: важно чтобы iPhone оставался безопасным и надежным. Пристойным, законопослушным, отвечающим эстетическим представлениям Apple… – последнее я добавляю от себя.

Для этого… для размещения на полках App Store, каждая программа должна будет пройти тщательную проверку. Отправить программу на проверку сможет только участник iPhone Developer Program, членство в этой программе платное (99 долларов в год).

Проверка для разработчиков – бесплатная, число попыток не ограничено, время проверки от суток до двух недель, обычно дня 2 или 3.

В эту программу, временно, набор ограничен. Принимаются только резиденты США (нет, не шпионы высокого ранга – граждане США и лица, постоянно там проживающие), и число мест ограничено. Программа работает в режиме тестирования и отладки, извините за…

И самое главное: App Store – единственный способ распространения программ для iPhone.

Что-то подсказывало, что все будет непросто, но реальность превзошла ожидания…

Продолжение следует

Обсудить историю Apple вы можете в нашем Telegram-чате.

Лучший комментарий

 
Авторизуйтесь Чтобы оставить комментарий