О приложении
Привет, Хабр. Я хочу рассказать о моем первом опыте (вообще, тут я немного кривлю душой, но об этом позже) разработки для AppStore и, что, наверное, более интересно, о том, какие уроки из этого я вынес. Приложение называется iAutographer — и само по себе довольно тривиально. Оно предоставят возможность коллекционировать автографы, привязывая их к контактам телефона и набрасывать на общее пано (Sign Board). Затем при просмотре автографа он прорисовывается заново, тем самым создается ощущения, что человек расписывается на ваших глазах. На этом, пожалуй, о приложении и все. Для того чтобы посмотреть на него в деле, привожу 10 промо кодов тут:
KWXLTXX9ENHW
FRLWJ64X46NH
76WT4PMF36KK
FYWR3XAN4FPX
HLWXH4NMTYNA
J9MWH9HKK9RW
EW9343LX9P4N
AXRNYT3XK76A
TF6WRYNJFNNW
39MP9A3TLHXP
и еще десятка два готов выслать по запросу. К сожалению, пока действуют только в US AppStore.
Почему платное?
Теперь расскажу почему это первое приложение и сразу за деньги, дело в том, что вторую половину 2010 года нами (о «мы», если будет интересно, напишу чуть позже) было решено посветить изучению и апробированию новых платформ, таких как iOS, Android, Symbian, WP7 ну и более мелких, пока, игроков, таких как MeeGo, BADA, etc. Так как до этого команда имела опыт только в разработке веб приложений, и был выбран довольно большой промежуток времени. Ах да, в нашей геолокации вероятность найти разработчика на мобильные платформы неистово стремится к нулю, и после недолгих попыток мы решили «воспитывать своих бойцов». Время было решено разбить на несколько этапов, на первом из которых было необходимо создать бесплатные приложения, пройти тернистый путь добавления в маркеты (да, Android тут сильно облегчает задачу) и собственно добиться хоть каких-то установок и отзывов пользователей, а затем уже пробовать писать платные приложения. Но приложении, которое было поставлено на рассмотрение еще 5 сентября, и ныне там. Не хочу лить грязь на Apple, так как первой причиной отказа было то, что в файле Info.plist был определен ключ для фоновой работы приложения, а в коде этот функционал в дальнейшем исчез. Однако, при втором отказе я был сильно удивлен, ну во-первых когда ближе к полуночи мой телефон отрапортовал о том, что звонят из San Jose CA, ну а во-вторых, что причиной отказа является то, что приложении позволяет к отзывам прикладывать фотографии, что для Apple стало неприемлемо, и сославшись на юридические аспекты меня отправили в путь во второй раз. Вообще, я до сих пор считаю отказ не справедливым, ибо практически в любом сервисе есть возможность оставить комментарий (который, кстати, никак не модерируется) и прикрепить фотографии Семен Семеновича, но твиттер что-то банить никто не спешит. Исходя из того, что откровенно технических багов найдено не было (краши, ошибки, и т.д.) я надеюсь, что с третьего захода приложение наконец появится в сторе. А iAutographer прошел модерацию за обещанные дядей Стивом 7 дней. И именно поэтому первое приложения оказалось платным.
Подводные камни
Заранее хочу извиниться перед теми, кто это все прекрасно знает.
Info.plist
Итак, как я уже и говорил выше, перед добавлением приложения на рассмотрение стоит довольно подробно пройтись по Info.plist, ошибки или неточности в нем могут никак не влиять на работу приложения, и тесты никак это не выявят, а вот яблоки смотрят туда очень внимательно. Проверить наличие всех иконок и прелоадеров (сейчас правда это уже строго описано в правилах добавления).
Отчеты
Отчеты о продажах и установках вашего приложения появятся очень не сразу после добавления его в AppStore. Само появления в сторе заняло порядко 4-6 часов с момента, как мне пришло уведомления о изменении статуса приложения на «Ready for sale». А отчеты стали доступны только по прошествии двух суток. Для просмотра их прямо на вашем iPhone есть замечательная утилита iTC Mobile, но она будет говорить об ошибке, до тех пор пока не появятся отчеты, меня это честно говоря сильно удивило, так как если отчетов пока нет — отчего бы и не сообщить это пользователю в более юзерфрендли форме, нежели «Error No data found for your request» прямо на старте приложения.
Телефонный разговор
Не смотря на то, что документация полностью на английском языке, если ваш разговорный английский оставляет желать лучшего (у меня именно такой случай), при телефонном с Apple разговоре вы можете об этом сообщить, и буквально в течении нескольких минут на том конце провода должен найтись наш соотечественник. Во всяком случае у меня два раза было именно так.
App loader
Начиная с третьей версии SDK теперь нет необходимости загружать приложения через веб интерфейс, теперь в XCode можно просто скомандовать Build→Build And Archive. Что действительно очень удобно, так как developer.apple.com показался мне очень неудобным.
Законодательство
Apple не даром написал, что App Store Review Guidelines является «живым документом», и очень многие вещи, которых там не описаны могут быть применены к вашим приложениями, как например было в нашем случае. Поэтому перед добавление обратите внимание на различие законодательств наших стран.
Заключение
Как уже было неоднократно замечено, разработка для AppStore действительно включает в себя много лишних формальностей и, на мой взгляд, менее приятна для новичка, чем скажем тот же Android. Конечно, Java для большинства разработчиков, удобнее Objective c. Конечно, когда от идеи простого приложения до появлении его в маркете проходит не месяц, а менее суток — это здорово. Но и у AppStore есть свои плюсы, основным из которых является покупательная способность пользователей и то, что новое приложение получает тут несколько больше внимания, чем скажем в том же Android Market.
UPD Решил, что этому топику большее место в «Я пиарюсь».