Search
Write a publication
Pull to refresh
0
@SamderHabrread⁠-⁠only

User

Send message

Знай свои секреты. Поиск и автоматическая проверка секретов сторонних сервисов

Reading time17 min
Views4K

Привет, Хабр!

По традиции, представлюсь, меня зовут Юрий Шабалин, и вместе с командой Стингрей мы разрабатываем платформу анализа защищенности мобильных приложений. Сегодня я хотел бы рассказать о хранении секретов в мобильных приложениях. А именно о том, что происходит с аутентификационными данными от сторонних сервисов, которые мы так любим использовать. И, конечно, о том, какими последствиями может обернуться для приложения и компании отсутствие должного внимания к их безопасности.

Поехали!

Читать далее

Особенности разработки для WatchOS приложений для здоровья

Reading time11 min
Views3.9K

Достаточно плотно разработкой программного обеспечения для часов я занимаюсь с 2017 года. За этот период сменилось 4 версии WatchOS (5, 6, 7, 8). Появилось больше функционала и исправлено множество баг с внедрением каждой новой версии Swift. Complications стали более самостоятельной частью приложения.

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

Читать далее

Короткое путешествие с android на iOS и обратно

Reading time4 min
Views12K
image

Этот текст был написан в начале февраля 2022 года. Сейчас, в мае, многое в нем утратило актуальность и некоторые придирки кажутся надуманными, но тьма не может длиться вечно.

Для тех, кто недолюбливает интриги, вот о чём здесь говорится, коротко: одни мобильные устройства и/или операционные системы — говно хуже других. Если вам не нравятся эксперименты, купите себе любой актуальный флагман на андроиде.

Пожалуй, стоит сразу прояснить цель создания этого документа: не то что бы я хотел сорвать покровы или планировал предупредить всё человечество. Это — предостережение самому себе. И когда в следующий раз мне захочется снова перейти на Айфон (а рано или поздно это непременно случится), я буду знать где искать ответ на вопрос «А стоит ли?» Возможно что это знание пригодится и вам, но гарантировать этого я не могу.

Теперь, когда со вступлениями покончено, можно начинать.

Читать дальше →

Гибкая навигация в iOS

Reading time11 min
Views5.4K

Помните времена, когда дизайнеры рисовали незамысловатые интерфейсы, а разработчики просто описывали переходы от одного экрана к другому? Вот и я не помню. Современное iOS-приложение – это тысячи строк кода, где добрая четверть – всего лишь описание навигации. Закономерно, что для упрощения жизни появляются различные фреймворки для навигации. 

Меня зовут Тимур Шафигулин, я – iOS-разработчик в hh.ru. В этой статье я расскажу про фреймворк для навигации в iOS-приложении.

Читать далее

Рисуем интерактивный линейный график на iOS с помощью Charts

Reading time7 min
Views3.7K

Однажды бизнес попросил меня создать минималистичный график, который будет отображать сглаженную кривую с градиентом под ней. По этому графику можно перемещаться между значениями, водя пальцем. При этом за пальцем должна следовать вертикальная линия, а текущее значение должно отображаться в выноске — «баблике» с дополнительной информацией. В будущем хотелось бы заложить возможность поддержки нескольких графиков в одной координатной сетке. Версии iOS и Android должны быть максимально похожи. Примерно такие графики есть в системном приложении «Акции», в финансовых приложениях и фитнес-трекерах. 

В этой статье я расскажу о библиотеке Charts и покажу на реальном примере, как создать свой первый график. 

Читать далее

Приключение на 5 минут: как мы переводили все зависимости на SPM

Reading time12 min
Views5.4K

Привет, Хабр!

Меня зовут Вильян Яумбаев, в этой статье я расскажу вам про наши приключения на пути к SPM.

В 2015 ПСБ начал разрабатывать проект для бизнеса. Для него, в свою очередь, было нужно приложение. Сперва всё находилось в одном репозитории одного проекта в одном воркспейсе. Первые авторы подключали сторонние зависимости через CocoaPods, поскольку проприетарного менеджера зависимостей ещё не существовало. Но в тот же год в Apple началась работа над Swift Package Manager. Им предстояло встретиться в нашем проекте.

В этой статье расскажу, через что мы прошли, переводя зависимости на SPM, и поделюсь нашими наработками.

Читать далее

Новинка от Apple: RoomPlan API

Reading time7 min
Views5.4K

На WWDC 2022 Apple представила новый инструмент RoomPlan, реализованный на основе ARKit 6, который использует LiDAR датчик на новейших iPhone и iPad для быстрого создания 3D планов комнат. По словам Apple, API может быть полезен для приложений в сфере недвижимости, архитектуры и дизайна интерьеров, поскольку он, с одной стороны, точен и гибок в настройке и экспортировании результатов а, с другой стороны, достаточно прост в использовании. Так ли это, давайте разбираться.

Читать далее

Rambler&Co + Okko Tech Talk: регистрация началась

Reading time2 min
Views1.1K

Всем привет!

Приглашаем всех мобильных разработчиков и просто неравнодушных ребят на совместный митап Rambler&Co и Okko.

Выйдем на связь 8 сентября с 19:00 до 21:00 в уже привычном смешанном формате – в онлайне и офлайне.

Читать далее

Найти всё, что скрыто. Поиск чувствительной информации в мобильных приложениях

Reading time16 min
Views7K

Привет, Хабр!

Многим из вас я уже знаком по предыдущим статьям. Меня зовут Юрий Шабалин. Мы вместе с командой разрабатываем платформу анализа защищенности мобильных приложений. Сегодня я расскажу о том, на что обратить внимание при поиске и анализе чувствительной информации в приложении, как ее искать, и немного о том, как ее можно правильно хранить.

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

Надеюсь, что каждый найдет для себя здесь что-то познавательное и интересное.

Читать далее

Подключение OAuth в iOS за полчаса

Reading time9 min
Views6.9K

Привет! Меня зовут Лена, я занимаюсь iOS-разработкой в KTS.

В большинстве случаев мобильное приложение должно уметь авторизовывать пользователя для доступа к данным, и зачастую это должно происходить с помощью сторонних сервисов. В таких случаях используется OAuth2.0 — протокол, позволяющий авторизоваться в другом сервисе без необходимости передавать логин и пароль в приложение и давать ограниченный набор доступов к ресурсам сервиса.

В мобильных приложениях используется Authorization Code Flow with Proof Key for Code Exchange (PKCE). Подробнее о выборе flow читайте в нашей предыдущей статье. Эта статья является продолжением.

Сегодня мы рассмотрим вариант реализации OAuth-авторизации с помощью библиотеки AppAuth-iOS. Она одна из самых популярных и довольна проста в использовании. Весь код из статьи доступен в Github.

Читать далее

Теперь наш синтез также доступен в виде бота в Телеграме

Reading time2 min
Views12K

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

С ботом можно общаться только напрямую. Бот содержит весь основной функционал последних моделей (работает мгновенно, имеет максимально высокое качество, есть автоматическая простановка ударений и буквы ё). Более подробно об ограничениях и особенностях работы можно узнать в методах /help и /faq.

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

Попробовать

Бесплатный чат для сайта — плагин 3CX для WordPress

Reading time4 min
Views3.1K

Здравствуйте!

В этой статье мы расскажем о сервисе чата для сайта от 3CX - бесплатной альтернативе популярным, но затратным аналогам. Обновленный виджет Live Chat мы представили вместе с нашим новым облачным продуктом 3CX StartUP.

Далее

Для подписи приложений iOS/macOS не нужен компьютер Apple

Reading time4 min
Views12K


В экосистеме Apple сейчас так устроено, что для выпуска приложений iOS/macOS требуется получение сертификата, затем подпись кода и нотаризация подписи. Согласно документации, подпись кода гарантирует пользователям, что приложение получено из известного источника и не изменялось. Для получения и использования сертификатов требуется участие в программе Apple Developer Program.

Такая система удобна с точки зрения безопасности закрытой экосистемы Apple, но создаёт некоторые трудности для разработчиков.

Однако любые трудности на то и существуют, чтобы их преодолевать.
Читать дальше →

Пишем Telegram бот текущей погоды по IP адресу на Python aiogram

Reading time11 min
Views63K

Штош. В этой статье я расскажу вам, как создать Telegram бота, который получает текущую погоду по IP адресу. Мы будем использовать язык Python и асинхронную библиотеку для взаимодействия с Telegram Bot API - aiogram.

Читать далее

Видео в вебе, Browser Policy и палки в колёсах

Reading time5 min
Views5.3K

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

Это негативно сказывалось на пользовательском опыте, и в какой-то момент разработчики браузеров решили, что хватит это терпеть. Так родилась Autoplay Policy.

Рассмотрим её подробнее

Переводчик сайтов на JS

Reading time4 min
Views12K

В наши дни довольно легко преодолевать языковой барьер в интернете благодаря различным сервисам перевода. Однако что делать, если у пользователя вашего приложения устаревший браузер? Или он открывает ваш сайт в приватном окне, где не работает встроенный переводчик?
Ответ очевиден: реализовать свой переводчик на сайте!

Читать далее

Бот или не бот — вот в чем вопрос

Reading time36 min
Views9.3K

Идентификация пользователей интернета по "веб-отпечатку" (fingerprint) формирует новую реальность. Интернет теряет анонимность прямо сейчас. Это происходит не по причине насилия регулятора, а естественным путем вследствие появления доступной технологии защиты от ботов. Почему защита от ботов деанонимизировала людей, как это уже ударило по коммерции и как совсем скоро изменит общество в целом - популярно под катом.

Читать далее

1–2–3. Простой мониторинг для маленьких веб-сервисов

Reading time6 min
Views9.7K


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

Но при этом не хочется тратить много времени на поддержку таких проектов. В идеале — вообще не тратить. Запустил — и забыл. В этом случае нужна самая простая, минимальная система мониторинга с критическими алертами и автоматическим перезапуском сервера.
Читать дальше →

Вторая жизнь старого железа. Продакшн

Reading time7 min
Views65K

У вас есть отработавшие смартфоны, планшеты, ноутбуки, мониторы? Наконец-то можно проявить смекалку и найти применение старым гаджетам, и перестать выбрасывать их и загрязнять планету.

Всё это можно восстановить, починить, дать железу вторую жизнь, порадовать себя и родственников. Вполне вероятно, что в ближайшие годы продажи паяльных станций побьют рекорды, а ларьки по ремонту техники откроются на каждом углу.
Читать дальше →

Колхоз. Большая история фермы устройств Яндекса

Reading time20 min
Views41K
Все новые сервисы Яндекса, а также апдейты к существующим приложениям и сайтам нужно тестировать: на айфонах, андроидах, десктопах, умных колонках, телевизорах. Раньше часть тестировщиков работали на личных телефонах и компьютерах, а часть — использовали для тестов корпоративные девайсы. Процесс не был гибким и с трудом масштабировался. Поэтому мы сделали свою клауд-ферму устройств. Сначала ей пользовались только отдельные команды тестирования, но со временем ферма стала особенно популярна и среди разработчиков. В итоге мы собрали почти 800 разных девайсов, которые теперь доступны 24/7.



Меня зовут Кирилл Коргов, я отвечаю за то, чтобы ферма устройств работала и развивалась. Кстати, называть её просто фермой было бы скучно, поэтому где-то на заре проекта мы по-доброму назвали её близким по смыслу словом «Колхоз». Если интересно, с чего Колхоз начинался, как пандемия привела к неожиданному росту его популярности и что общего у макбуков с лотками для офисной бумаги, прошу под кат.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity