Рубрика «iOS» - 87

До Mobius 2016 осталось 3 дня, и программа уже готова. Получилось 24 доклада о мобильной разработке: Android, iOS и кроссплатформенной. Чтобы внимательно изучить их все, надо потратить почти час времени, поэтому мы подготовили небольшой гайд по программе, которая сама собой разделилась на три направления, не привязанных к платформе:

  • On the Edge;
  • Hardcore;
  • Software Craftsmanship;

Однако этот пост не только о конференции – каждый из докладов попадает в программу из-за того или иного «грешка», распространенного среди программистов. Давайте посмотрим подробнее…

3 греха мобильной разработки на Mobius 2016 - 1


Читать полностью »

Разрабатывать мобильное приложение независимо для разных платформ, или изо всех сил налегать на кроссплатформенные средства? Многие скажут, что это заведомо ошибочная постановка вопроса: у обоих вариантов есть свои преимущества и недостатки, так что единственно верного ответа нет. Но это не значит, что разговоры на эту тему могут быть лишь холивором, бессмысленным и беспощадным.

Во-первых, преимущества и недостатки обоих подходов будут совершенно по-разному сказываться в разных ситуациях. Значит, этот вопрос стоит рассматривать не в вакууме, а применительно к конкретным условиям. А во-вторых, нюансы ещё и меняются со временем: например, совсем недавно Microsoft, купив Xamarin, сделали этот продукт бесплатным. Означает ли это, что привычные нам «за и против» пора пересмотреть?

Кроссплатформенная мобильная разработка: вопросы взрослым - 1

Мы задали несколько вопросов трём специалистам, занимающимся мобильной разработкой на заказ и хорошо знакомым с тем же Xamarin: кому ещё оценить спектр возможных ситуаций, как не им, задействованным в проектах разного масштаба и характера? Нашими собеседниками стали:

  • Михаил Самарин (Futurice, бизнес-директор)
  • Денис Кретов («Нотиссимус», технический директор)
  • Максим Pocheshire Евтух («Нотиссимус», разработчик)

Читать полностью »

Знакомьтесь, Боб — матёрый ios разработчик, Алиса — не менее матёрая тестировщица. Дело было вечером дело было в пятницу. Боб дофиксил багу, вроде бы протестил на своих девайсах. Затем Боб запускает уже отточенные до автоматизма команды:

git checkout develop
git merge bug_fix_#999
git checkout master && git merge develop --no-ff ....
git push ....

На пуш на сервере срабатывает jenkins/teamcity/travis, который запускает билд. В это же самое время наш Боб пишет Алисе, что скоро пойдет домой, и хочет, чтобы аппа ушла сегодня в стор на апрув, дабы выйграть лишние пару дней, так как на носу выходные, если конечно приложение пройдет ручное тестирование Алисы.

Приложение Боба довольное обычное: пару сотен компилируемых класс файлов, еще с десяток cocoapods зависимостей ну и кучка сторибордов — Боб ценит своё и коллег время и не пишет UI в коде, будь как Боб. Боб знает, что его приложение с чистого старта на сервере собирается за 4 минуты для develop версии, которое идет на тест Алисе, и столько же или чуть больше для production версии. Боб также знает, что ему нужно около 10 минут, чтобы дождаться окончания полной сборки и затем сообщить Алисе, что она может приступать к тестированию. Боб человек ответственный, поэтому по истечении 10 минут после пуша проверяет статус билда, так как знает, что сервер это отдельный параллельный мир со своими правилами, законами и странностями.

Пятница, вечер, Боба отделяет от долгожданных выходных только 10 минут, после которых передаст эстафету Алисе. Боб вбивает с сафари bobcompany.ci/dashboard, где видит красную лампочку напротив своего приложения, глаза Боба потускнели, разочарованию не было предела. Боб жмет на show more, где его встречает ошибка:

Code Sign error: No codesigning identities found: No codesigning identities (i.e. certificate and private key pairs) that match the provisioning profile specified in your build settings (“com.company.bob”) were found.

Тут нервы Боба совсем сдают:

Apple, боль и сертификаты - 1

*Кратко об ошибке, она проявляется когда мы пытаемся подписать приложение несуществующим сертификатом, под несуществующим понимается или он не установлен на машине, или он устарел и mobileprovision заведен на более свежую версию сертификата того же аккаунта для того же бандла.

Читать полностью »

Прошел ровно год с того момента, как наша команда начала разработку своего первого продукта — ionic-приложения для знакомств, которое является отечественным братом всем известного tinder. В течение этого года мы столкнулись с множеством проблем, характерных для гибридных приложений, теперь у нас есть опыт и замечания, которыми мы были бы рады поделиться с вами.
Читать полностью »

В новом дайджесте сразу три описания ConstraintLayout в Android, исследование защищенности карты Тройка, магия дизайна, новый опрос Developer Economics, 2 года Monument Valley и множество других интересных материалов.

Дайджест интересных материалов для мобильного разработчика #155 (23-29 мая) - 1Читать полностью »

Сегмент мобильной разработки регулярно предлагает участникам рынка новый инструментарий. О том, стоит ли использовать такую новую для программирования под iOS концепцию, как дженерики, а заодно о том, пора ли переходить на Swift, мы поговорили с Максимом Соколовым, специалистом по мобильной разработке компании Avito.

Пора ли переходить на Swift? - 1

— Расскажите, пожалуйста, в двух словах о себе и своем опыте работы со Swift.

— На текущий момент я работаю в компании Avito разработчиком мобильных приложений для iOS. В мобильной разработке я около 5 лет, а до нее занимался различными направлениями, в частности, веб-сайтами, бэкэндом и desktop-приложениями.
Swift мы начали использовать в Avito больше полугода назад, когда вышла вторая версия языка, накопилась обратная связь от сообщества разработчиков. Ранее в работе мы использовали Objective-C, но теперь весь новый код пишем на Swift.

— Некоторые разработчики отзываются о Swift, как о весьма «сыром» языке, не подходящим пока для крупных проектов. Можете ли вы подтвердить или опровергнуть это мнение?

— У Swift, безусловно, есть недостатки, в частности, связанные со средой разработки. Xcode время от времени падает, отключается подсветка синтаксиса или компилятор отказывается компилировать код. Упомянутые недостатки нельзя назвать причиной отказа от разработки больших проектов на Swift. Сталкиваясь с проблемами — мы находили решение. И мы уже отправили в продакшн достаточно объемный проект, написанный на этом языке.
Читать полностью »

Как мы выходили в ТОП-3 украинского App Store - 1

Если вы iOS-разработчик, работаете в компании по разработке iOS-приложений или любым другим образом связаны с этой сферой, то знаете приблизительное количество скачек, необходимое для выхода в топ. Цифры разнятся от категории к категории, каждый использует собственную стратегию, поэтому любой опыт важен. Ниже я хочу поделиться нашим опытом. Надеюсь, он будет полезен читателям. Хочу предупредить, кейс нетипичный. Мы выходили в топ украинского App Store, а не российского. Тут вы не найдёте магических "тысяч скачек с нулевым бюджетом на маркетинг". У нас так не получилось, и бюджет был хоть и небольшой, но уж точно не нулевой.

Читать полностью »

С учетом стремительного роста требований к качеству игрового, фото- и видео-контента и требований к объему памяти со стороны iOS, мизерных 16 Гб, которыми оснащаются младшие версии смартфонов Apple iPhone их пользователям сегодня катастрофически не хватает. Если брать во внимание слухи и фотографии, опубликованные на популярном китайском инсайдерском ресурсе ww2.sinaimg, производитель думает над решением этой проблемы и намерен расширить возможности памяти в будущем поколении iPhone 7 до 256 Гб (в старшей версии iPhone 7 Plus). Но пока слухи остаются слухами, а проблемы не теряют своей актуальности, есть смысл рассмотреть альтернативный вариант расширения возможностей памяти, который в любом случае лишним не окажется. Таким вариантом для владельцев iPhone, iPad и iPod Touch вполне может стать накопитель Transcend JetDrive Go 500S с разъемами USB 3.1 и Lightning. Подробнее о возможностях этой не совсем обычной флэшки мы расскажем ниже.

image
Читать полностью »

Скоро два года с того момента, когда язык Swift был официально представлен, но его состояние остаётся неопределённым. С одной стороны, в топе «самых любимых языков» на Stack Overflow он на втором месте — видно, что попытка Apple «улучшить Objective-C» разработчикам понравилась. А с другой, в топе «самых используемых» его при этом нет — там по-прежнему Objective-C. Более того: сообщается, что сама компания Apple сейчас толком не использует в iOS свой собственный язык, пока что реализовав на нём только калькулятор.

Одна из причин в том, что язык ещё не достиг стабильности ABI: сейчас никто не гарантирует, что после выхода его новой версии ваш код не сломается. Однако в Apple называют важнейшим приоритетом исправление этой ситуации. А недавно на горизонте показалась версия 3.0, которая должна принести много нового. Означает ли всё это, что настаёт время браться за Swift всерьёз, или целесообразность его использования всё ещё под большим вопросом?

Настоящее и будущее Swift: вопросы взрослым - 1

Мы решили расспросить о настоящем и будущем языка трёх специалистов из крупных компаний, уже использующих Swift и не понаслышке знакомых с темой. На наши вопросы ответили:

  • Максим Соколов (Avito);
  • Игорь Кашкута (Badoo);
  • Егор Толстой (Rambler&Co).

Читать полностью »

Не так давно, с релизом iOS 9.3, в свет вышел Apple Music API — набор средств для управления встроенным яблочным плеером. Теперь разработчик может увидеть, оплатил ли пользователь подписку и в какой стране она доступна. Однако, увидеть, кто что слушает нам не позволено — только воспроизводить и добавлять музыку в каталог.

Наш путь состоит из четырёх шагов:

  • Получить данные о состоянии Apple Music;
  • Сделать запрос о нашей музыке через iTunes Search API;
  • Воспроизвести и добавить музыку в медиатеку;
  • Избежать проблем и пройти ревью в App Store;

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js