Плюрализация? Не, не слышал!

Разница между тестировщиком и QA инженером

Разницу между тестером и qa инженером обьясняет Егор Бугаенко https://youtu.be/hp4PL0AJAVo

Какие либы использует auto.ru iOS приложение

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

Первый раз я это встретил в приложениях google. Вот теперь дело дошло до отечественных разработчиков 🙂

Auto.ru — старейший портал об автомобилях в рунете. iOS приложение доступно с 2012 года. Проект был куплен Яндексом в 2014 году.

Посмотрим на библиотеки в iOS приложении auto.ru. Наверняка там будут динозавры и увидим в каком направлении они двигаются сейчас. Ведь библиотек в приложении более 50 штук!

Читать далее Какие либы использует auto.ru iOS приложение

Swift Viper Weather App

VIPER в интерпретации Rambler вошел в мир iOS достаточно давно. Написана отличная книга и в связке с приложением «Конференции» дает исчерпывающее представление о заложенных подходах в Clean Architecture и SOLID. Но с одним недостатком — все на Objective-C.

TECHNOLOGY RADAR еще в апреле 2016 сделал swift в качестве основного языка разработки под iOS. А у нас на дворе 2k17 и swift 4. А что это значит? Правильно! Пишем свое приложение с блекджеком и RxSwift!

Читать далее Swift Viper Weather App

Awesome iOS

awesome_logo

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

Хотелось запилить что-то на подобие awesome-ios, только те что прошли через боевые проекты. Добавляйте свои библиотеки в комментариях.

Читать далее Awesome iOS

Под «капотом» Тайного Санты

Под конец 2016 года разработано приложение для Тайного Санты под iOS. На работе не первый год уже в него играем. А тут в сентябре бизнес заказчик в лице жены объявил — «Ты ж программист, а нам на работе надо в Тайного Санту сыграть — можешь написать приложение к Новому Году для нас?» И было принято решение запилить приложение.

download_on_the_app_store_badge_ru_135x40

Далее расскажу про подробности разработки и используемые технологии.

Читать далее Под «капотом» Тайного Санты

Получение .ipa через xcodebuild

Xcode 6 позволяет вам экспортировать .ipa из архива для распространения adhoc сборок. Раньше требовалось иметь правильный provisioning profile и distribution certificate на вашем ПК. Начиная с Xcode 6 вам надо быть членом команды в Developer Program account и у вас должны быть права делать distribution build. Это означает, что вам надо быть team agent.

Сборка через  xcodebuild

Начинаем с очистки

xcodebuild clean -project $projectname.xcodeproj -configuration Release -alltargets

Далее скрипт собирает и архивирует приложение. Используем параметр -archivePath для указания пути архива.

xcodebuild archive -project $projectname.xcodeproj -scheme $schemename -archivePath $projectname.xcarchive

Наконец экспортируем архив в файл .ipa.

xcodebuild -exportArchive -archivePath $projectname.xcarchive -exportPath $projectname -exportFormat ipa -exportProvisioningProfile “Provisioning Profile Name”

Provisioning profile заключает в себе signing identity, но вы можеет указать его через параметр -exportSigningIdentity.

Читать далее Получение .ipa через xcodebuild

Certificate and Public Key Pinning

Certificate and Public Key Pinning — это техническое руководство для реализации привязки сертификата или публичного ключа сервера к клиенту, как это описано в презентации Securing Wireless Channels в Mobile Space, глава «Virginia» . Эта документация фокусируется на обеспечении ясного, простого и применимого руководства для обеспечении безопасности канала связи во враждебной среде, где действующие лица могут быть враждебно настроены и цена ошибки в доверии к ним весьма высока. Дополнительные материалы статьи включают в себя: выдержки с кодом, пример программы на Android, пример программы на iOS, пример программы на .Net и пример программы OpenSSL.

Пару слов про OWASP

Это перевод статьи международной организации The OWASP (Open Web Application Security Project) — Certificate and Public Key Pinning. Данная организация занимается проектом обеспечения безопасности веб приложений. Сообщество OWASP включает в себя корпорации, образовательные организации и частных лиц со всего мира. Сообщество работает над созданием статей, учебных пособий, документации, инструментов и технологий, находящихся в свободном доступе. 

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

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

OWASP сформировал набор рекомендаций для построения безопасных REST/SOAP сервисов. Разработали стандарт для проведения проверок уровня безопасности приложений. Практически все разработчики мобильных банков стараются следовать их рекомендациям.

Читать далее Certificate and Public Key Pinning

Конференция Rambler iOS#7

На прошлой неделе прошла конференция Rambler’a для iOS разработчиков. Проводилась она в штаб-квартире — Москва, Варшавское шоссе 9с1.

Доклады были следующие:

  • Интернет-эквайринг 101 — Алексей Сычев
  • Прием платежей по банковским картам в iOS — Александр Сычев
  • Построение сложных табличных интерфейсов — Андрей Резанов

Ну и самое интересное — обсудить все за пиццей. Далее по катом.

Читать далее Конференция Rambler iOS#7

Размытие снимка приложения в неактивном состоянии

Apple рекомендует убирать важную информацию с экрана перед тем, как приложение уйдет в фоновый режим. Это можно сделать просто «размыв» экран до нечитабельного состояния, как делают многие банковские приложения.

blur

Реализуем данное поведение ниже.

Читать далее Размытие снимка приложения в неактивном состоянии