AppStore: об отказах из первых рук
АрхивКолумнистыТема "взбесившихся цензоров из AppStore" муссируется практически повсеместно. "КТ-Онлайн" решила дать слово тем, кого проблема касается напрямую - разработчикам. На наш призыв откликнулся Александр Пацай, также известный как Alexmak.
Глядя на ситуацию с App Store, магазином приложений для iPhone и iPod touch, нельзя не провести аналогии с приступами золотой лихорадки, которые будоражили умы многочисленных мечтателей в середине позапрошлого столетия. Тогда многие первопроходцы быстро разбогатели, найдя жилу, да и практически весь штат Калифорния возник и стремительно вырос именно благодаря Калифорнийской золотой лихорадке, имевшей место в районе 1850 годов. Однако на каждого золотого миллионера приходились тысячи человек, которые, бросив всё, ничего не нашли и были вынуждены вернуться домой, да и вред окружающей среде за время лихорадки был нанесён немалый.
Точно так же и с магазином App Store: тысячи разработчиков "бродят по полю", пытаясь обнаружить ту самую золотую жилу, о которой в красках рассказывает Apple, из раза в раз повторяющая success stories нескольких разработчиков-одиночек. Да, кто-то и в самом деле заработал сотни тысяч долларов. Но для большинства разработчиков эта "лихорадка" превращается в титанический труд: и дело не только в необходимости найти идею для приложения - готовую программу надо "затолкать" в App Store, прорваться через кордоны Apple, где приложения проходят не только тщательную проверку, но и иногда, случается, даже цензурирование.
Сама идея App Store, в принципе, неплоха, но, как обычно это происходит, дьявол кроется в деталях. Когда Apple представила iPhone, для него не существовало возможности создания полноценных приложений; все, что могли официально делать разработчики — создавать веб-приложения, специальные облегчённые версии веб-сайтов, с HTML и AJAX, куда бы могли заходить пользователи для решения тех или иных задач. Apple потратила немало сил, чтобы убедить разработчиков, что именно это — самый правильный и единственно верный путь для разработки под iPhone. Однако не все были с этим согласны, и возник рынок jailbreak — когда телефон взламывался особым образом, и появлялась возможность устанавливать на него приложения, созданные с помощью инструментов разработки для Mac OS X. В этой ситуации очень помогало то, что у iPhone и Mac OS X общие корни, и знания, опыт и инструменты легко переносились с одной платформы на другую.
Иногда политика Apple в отношении некоторых типов приложений может меняться
Apple, увидев, что остановить поток полноценных приложений для iPhone невозможно, решила взять контроль этого процесса на себя. В прошлом году компания объявила об открытии централизованного магазина, в который смогут получить доступ все iPhone и iPod touch, где можно будет просматривать, покупать и скачивать приложения для этих устройств. По сравнению с другими мобильными платформами, это было большим прорывом, каждое приложение для Windows Mobile или Symbian приходилось искать по всему Интернету и покупать индивидуально. За возможность размещать приложение у себя, проведение платежей и прочие мелкие услуги Apple берёт себе 30% от продаж приложения, остальные 70% получает разработчик. Если приложение бесплатное, то разработчик платит только 100 долларов в год за право быть официальным разработчиком для платформы. С точки зрения пользователей и Apple эта модель оказалась невероятно успешной — за первый год работы App Store пользователи загрузили 1,5 млрд. различных приложений. Попадание в первую десятку приложений в App Store означает получение продаж на десятки тысяч долларов в день — ведь этот список видят миллионы пользователей iPhone. На данный момент в App Store числится более 60 тысяч приложений, и их количество продолжает расти с каждым днем — все хотят успеть застолбить кусочек территории для того, чтобы заработать на этой "золотой лихорадке".
Однако, как в золотую лихорадку, когда инфраструктура городов была не предназначена для внезапного массового наплыва людей, желающих стать старателями, так и в случае с App Store оказалось, что Apple не совсем готова к тому наплыву разработчиков и приложений в магазин. Дело в том, что, поскольку Apple отвечает за то, какие приложения становятся доступными пользователям, компания постановила, что все приложения и все обновления этих приложений должны проходить процедуру проверки перед тем, как попасть в магазин. Разумеется, это вызывает задержки по времени, пока приложение рассматривается (а ведь приложений в App Store уже немало, и с каждым днём всё больше). Иногда, если программа небольшая и несложная, разработчику может повезти, и программу проверят и пропустят в App Store за одну неделю. Если программа более сложная, то этот процесс может занять и 2-3 недели. В этом случае через неделю после подачи программы обычно приходит письмо о том, что "проверка приложения потребует дополнительного времени, ждите ответа" — и остается только ждать. Такие задержки крайне вредны для ситуаций, когда нужно срочно исправить критическую ошибку и выложить обновление: к тому времени, как ваше обновление утвердят, разработчик рискует получить массу негативных отзывов о проблемах в приложении.
Но задержки с утверждением приложения — это ещё полбеды. Куда более серьёзной проблемой App Store является возможность отказа пропустить программу в магазин. Apple разработала документ под названием iPhone Developer Agreement, где изложены правила, которым должно соответствовать приложение, чтобы попасть в магазин. Там же (в довольно общих терминах) говорится, каким приложение быть не должно. Есть, к примеру, такая формулировка: 3.3.14 Applications must not contain ... other content or materials that in Apple’s reasonable judgment may be found objectionable by iPhone or iPod touch users. 3.3.14 Приложение не должно содержать ... другие материалы или контент, который по разумному суждению Apple может оказаться нежелательным для пользователей iPhone и iPod touch.
Очень удобная лазейка, если нужно ответить отказом: многие идеи или возможности приложений для iPhone рубятся именно по этому пункту, причём разработчики об этом узнают лишь постфактум, когда силы и время на разработку приложения уже потрачены. В США ситуация осложняется ещё и тем, что iPhone официально доступен только через одного оператора мобильной связи — AT&T, у которого свои представления о том, что может или не может работать в его сети. Отсюда, например, растут ноги у запрета работы VoIP (Voice over IP, IP-телефония) через сети EDGE или 3G — голосовые звонки в том же Skype и других подобных приложениях могут работать только через WiFi. Но даже разрабатывая приложение в России для российских пользователей, нужно эти "местные сложности" учитывать, так как Apple не будет разбираться для какого рынка приложение, а просто поставит отказ по причине несоответствия чему-нибудь. Поскольку мы занимаемся разработкой не только своих приложений, но и программ для iPhone на заказ, я рекомендую заказчикам оставаться в рамках стандартной функциональности и диалогов, так как это значительно снижает риск отказа программе.
Художники сайта JoyofTech могут логически объяснить любой отказ Apple
С задержками и отказами в App Store мы знакомы не понаслышке - многократно сталкивались с ними лично. В частности, последний пример таких "сложных отношений" — это ситуация вокруг приложения i2Reader, которое заработало свой девятый отказ на прошлой неделе. i2Reader — довольно популярная программа для чтения электронных книг на iPhone, которую мы разработали ещё до появления App Store (соответственно, она требовала процедуры jailbreak). Она и сейчас продается для тех пользователей, которые поставили себе на телефон Cydia или Icy, но мы решили, что в App Store она тоже вполне имеет право быть. Впервые мы подали программу в мае, и с тех пор она все никак в App Store не попадёт.
Честно признаю, что один отказ в мае — абсолютно наша вина, когда приложение не работало на прошивке 3.0, не вышедшей на тот момент, но Apple начала делать внутреннее тестирование именно с этой версией прошивки. Пара отказов была связана с тем, что сотрудник Apple, проводящий утверждение программы, просто не разобрался в её функциональности, и выдал резолюцию "поменять!". Ещё один отказ был связан с тем, что мы интегрировали в приложение работу с магазином электронных книг, но к тому времени Apple уже активно продвигала свою собственную систему "покупок внутри приложений", завязанных на App Store, и мы получили отказ и по этой причине. Затем внезапно Apple поменяла требования к возрастным ограничениям приложений, внутри которых есть встроенный веб-браузер, и стала отказывать тем приложениям, которым не присваивался соответствующий возрастной рейтинг. Имеется в виду, что, поскольку в Интернете водятся всякие ужасы, то любое приложение, предполагающее доступ в Интернет, должно иметь рейтинг "для взрослых", то есть 17 лет и выше. Правда, это было сделано не очень очевидно, поэтому мы, получив отказ, сначала установили рейтинг 12+, а потом через неделю пришел ещё один отказ, после которого мы уже поставили рейтинг 17+ и подали приложение ещё раз.
Вот тут-то случился ещё один отказ, в котором, в частности, говорилось о том, что "поскольку подобные приложения зачастую используются с целью нарушения прав сторонних лиц (подразумеваются копирайты), то Apple принимает решение не пускать приложение в App Store". Фактически, отказ звучал таким образом, будто Apple заранее обвиняет пользователей в использовании контента, полученного незаконным образом, и, с целью борьбы с пиратами, пресекает такую возможность. Возникает вопрос — а как же iTunes или iPod? Как быть с ними — ведь очень часто пользователи слушают с их помощью не самым честным способом добытую музыку? Или же с помощью QuickTime Player смотрят фильмы, добытые в торрентах — что делать в этом случае? Ситуация осложняется тем, что писать просьбы объяснить отказ фактически невозможно — то есть писать можно, но ответа всё равно не будет. Казалось бы - тупик, и в нём, подозреваю, оказываются многие разработчики приложений для iPhone, столкнувшись с бюрократической системой App Store.
К счастью, в случае с i2Reader есть и хорошие новости. Для этого мне пришлось использовать тяжелую артиллерию, в частности, письмо Филу Шиллеру, вице-президенту Apple. Совсем недавно он выступил с открытым письмом в ответ на статью известного блогера Джона Грубера, который на страницах своего блога критиковал Apple за то, что она, фактически, вынудила разработчика приложения процензурировать содержимое словаря в приложении. Шиллер написал Груберу, объяснив ситуацию с этим приложением, тем самым дав надежду, что, возможно, Apple следит за всеми трудностями разработчиков, и будет пытаться их решать.
Фил Шиллер: "Ручку мне верните!"
Фил Шиллер ответил на мое письмо, вкратце прояснив ситуацию с i2Reader и дав контакт другого менеджера в Apple, с которым мы сейчас и общаемся, чтобы решить проблему с нашим приложением. Оказалось, что формулировка в письме с отказом была не совсем корректной, так как речь шла о двух конкретных возможностях i2Reader, которые позволяли делиться книгами с другими пользователям прямо из приложения. Apple очень сильно боится обвинений и судебных исков, которые могут возникнуть в случае нарушения пользователями авторских прав, поэтому они перестраховываются "на всякий случай". Жаль только, что вместе с водой они зачастую "выплёскивают и ребёнка", но сейчас, когда ситуация с i2Reader понемногу решается в переписке с Apple, я склонен списать это всё на проблемы роста, с которыми Apple, несмотря ни на что, борется. Просто нам, разработчикам, это не всегда сразу видно.
P.S. Кто-то в Твиттере сравнил такое участие Шиллера с визитом Путина в Пикалёво, хотя я, пожалуй, с этим не соглашусь — я думаю, что участвуя таким образом, руководство Apple видит проблему и дает соответствующим лицам задачу её решить, что в случае с App Store вполне достижимо, причём в разумные временные рамки.
Об авторе: В настоящее время Александр Пацай является директором по продуктам компании RipDev - разработчика ПО для iPhone и iPod touch. Автор также известен как блоггер, много пишущий на тему продукции и бизнеса компании Apple.