Обновить
64K+

iOS *

Мобильная ОС компании Apple

41,01
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Хочу выложить приложения в AppStore и вообще в магазины на всех платформах. Практический кейс

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.8K

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

Читать далее

Новости

zhim.fit: приложение для персонального тренера без подписок и регистрации

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели4.3K

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

Читать далее

Как анимировать матрицу на Swift UIKit

Уровень сложностиСложный
Время на прочтение9 мин
Охват и читатели4.5K

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

Читать далее

0.0000008 Мбит/с при оценке A+: как тихий 403 от Cloudflare сломал половину теста bufferbloat

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели7.8K

Фаза загрузки в моём тесте bufferbloat не нагружала линию: speed.cloudflare.com отвечал на запрос гигабайта кодом 403 и одним байтом, а код этого не замечал. Как это исказило вердикты, как ошибка всплыла при скорости 0.0000008 Мбит/с и почему генератор нагрузки обязан измерять собственную нагрузку.

Читать далее

Применение gRPC при разработке приложений под iOS

Время на прочтение6 мин
Охват и читатели7.7K

Всем привет! При широком распространении REST подхода для клиент-серверного взаимодействия всегда существовали и существуют альтернативные решения, иногда незаслуженно обделенные вниманием. Об одном из них речь пойдет в сегодняшней статье. В ней будут даны некоторые теоретические основы, необходимые для работы и создан небольшой проект, который можно использовать для перехода на gRPC.

Читать далее

Мобильная разработка за неделю #647 (21 — 27 сентября)

Время на прочтение4 мин
Охват и читатели8.2K

В новом выпуске почему игры лагают и как я всё‑таки опубликовать игру в Google Play из России, iPhone Duo для iOS-разработчика и кросс-компиляция под Android, Flutter Web с WebAssembly Week, ИИ-агент для мобильного тестирования в hh.ru, биологическая лаборатория Anthropic, новые премиальные Googlebook на Android и многое другое. Заходите!

Читать далее

App Review забанил нашу механику. Нотаризация пропустила её — но нашла другое

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели8.3K

Два месяца, восемь раундов проверки Apple: два реджекта App Review и два реджекта нотаризации для альтернативного маркетплейса. Что выяснилось: контент на нотаризации действительно не смотрят - механика, зарубленная в App Store по Guideline 1.2, прошла четыре раза. Но формальные гайдлайны применяются: нас отклонили по 2.1 (ключ ATT без промпта) и по 4.8 (ревьюер открыл нашу веб-страницу входа и потребовал Sign in with Apple). Плюс цифры по срокам из App Store Connect: первая нотаризация шла неделю, последняя - 3 часа 46 минут.

Читать далее

Из 165 крупнейших банков в App Store остались 37. Почему сейчас в России проще быть Android-разработчиком

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели8.6K

Привет!

15 июля истёк срок, который ФАС дала Apple на предустановку RuStore и MAX. Требования не выполнены, дело возбуждено, потолок штрафа доходит до 4 млрд рублей. Ну, вроде очередной эпизод в переписке ведомства с корпорацией, таких за последние годы набралось много.

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

Скажу сразу: любимой платформы у меня тут нет, болеть ни за кого не собираюсь.

Читать далее

Почему спидтест говорит «всё хорошо», а игра лагает: как я построил Latency Dashboard и научил пинг не врать

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели6.9K

Спидтест показывает 200 мегабит, а в PUBG Mobile 180 мс — и оба числа правда. Пропускная способность и задержка измеряют разные вещи, и про вторую спидтест не говорит ничего.

Я собирал для своего iOS-приложения панель задержек: пинговать не «интернет вообще», а те серверы, которыми человек реально пользуется в своей стране, и сортировать их от худшего. Семь раундов измерений против лежащего рядом MacBook дали пять дефектов подряд — и вытащили баг, который жил в приложении с версии 1.0: два параллельных пинга забирали ответы друг у друга, потому что ICMP-сокет отдаёт и чужие echo reply тоже.

Читать далее

iPhone Duo для iOS-разработчика: что реально меняется в вашем Swift-коде

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели6.4K

iPhone Duo сломал часть допущений, зашитых в iOS-приложения с 2007 года: экранов теперь два, safe area асимметрична, «только портрет» больше не значит что думаете. Разбираю по докладам Apple, что реально меняется в вашем Swift-коде — size classes, reserved regions, arrangements, hinge и камера.

Читать далее

Вайбкодинг. iOS приложение от идеи до стора

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели12K

На разработку ушло 16 выходных дней и примерно 250$

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

Читать далее

Мобильная разработка за неделю #646 (14 — 20 сентября)

Время на прочтение5 мин
Охват и читатели9.6K

Возвращаюсь со своим еженедельным дайджестом для мобильных разработчиков. В этом выпуске адаптация приложений под iPhone Duo и Shared Transition как требования дизайнеров, прозрачный Яндекс.Навигатор и нативная разработка в Shopify, фронтенд без готового бэкенда, путь к Chaos As A Service, ошибка после оформления подписки, которая приводит к оттоку и многое другое. Заходите!

Читать далее

Как разрабатывать фронтенд без готового бэкенда: инструменты перехвата трафика, мокирования и принцип их работы

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели8.3K

Всем привет, на связи Дима Котиков! Я все еще люблю разрабатывать под Android/KMP, разбираться с инструментами для упрощения работы и латте на фундучном молоке. За пять лет мобильной разработки я неоднократно сталкивался с ситуацией, когда бэкенд запаздывает, а дедлайн горит. 

Зимой 2026 мы получили задачу: новый финансовый инструмент, дедлайн через три месяца, готовность бэкенда — через полтора. Команда начала работу на моках и успела. В статье я расскажу, какие инструменты перехвата и мокирования трафика помогли нам выпустить фичу в срок без готового бэкенда, как настроить их за один вечер и почему понимание принципов работы TLS и MITM-атаки экономит часы отладки.

Читать далее

Ближайшие события

Эволюция рендеринга в Zenith Engine: многопоточная загрузка GPU-ресурсов

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели7.6K

В данной статье будем рассматривать технические детали графических API Metal, API Vulkan и многопоточное программирование, от читателя требуется знание перечисленных технологий.

Всем привет! Я Андрей, разработчик 3D-графики в 2ГИС.

Если вы пишете рендер на C++ и у вас есть отдельный RenderThread, то, скорее всего, вы уже сталкивались с подобным: данные грузятся в фоне, а вот создание GPU‑ресурсов всё равно происходит в потоке отрисовки через прямое обращение к графическим API Vulkan, Metal, Direct3D 12. И пока RenderThread в длинном цикле создает буферы и текстуры, он не рисует — он стоит, пока не обработает список загруженных ресурсов.

У нас это выглядело так на типичной средней сцене: до появления первого кадра на поток отрисовки приходило 532 текстуры и 2713 буферов, которые удерживали 45 МБ и 20 МБ временной памяти в RAM соответственно. Всё это нужно было доставить до GPU, создать наборы буферов и текстур, далее всё освободить и только потом начинать собирать батчи и рисовать.

В статье разберём, как мы вынесли создание буферов и текстур на потоки загрузки, что для этого дает Metal, почему в Vulkan всё сложнее, и какие ограничения по особенностям работы графических API пришлось учитывать.

Читать далее

Адаптация iOS-приложений под iPhone Duo

Уровень сложностиСредний
Время на прочтение27 мин
Охват и читатели9.7K

Привет! Я Валерия Кудрявцева, iOS-разработчик в KTS. Пора поговорить о новинке.

9 сентября 2026 года Apple представила iPhone Duo, свой первый складной смартфон. Пока пользователи обсуждали новый форм-фактор, у нас, iOS-разработчиков, вопрос был другой: как поддерживать приложение на устройстве с двумя экранами и сгибом. Для нас Apple подготовила раздел HIG о проектировании под Duo, шесть Tech Talks и хаб Get Ready for iPhone Duo.

Статья основана на опубликованных Tech Talks Apple. Xcode 27.1 beta на момент подготовки ещё не вышел, поэтому возможности 27.1 описаны по презентациям. Проверить их на практике нужно после выхода SDK.

Сразу оговорюсь. По информации Apple, существующие приложения запустятся на Duo и без пересборки. Но адаптацию интерфейса это не отменяет: то, как приложение займёт внутренний дисплей и как поведут себя стандартные панели, зависит от SDK, с которым оно собрано. Различия разберу ниже.

Отдельный интерфейс под каждую pose Duo делать не нужно. А вот допущения в текущей вёрстке проверить придётся. Если код берёт доступное пространство из модели устройства или ориентации и считает отступы симметричными, на Duo такие расчёты дадут неверный результат. Основа остаётся одна: адаптивный UI, который смотрит на размер текущего окна и на size class.

Дальше разберу изменения iOS 27, что система сделает сама и что нужно править в коде, новые API 27.1 и типичные ошибки при аудите. В конце сравню подходы с Android foldable и расскажу, что из этого уже есть в Compose Multiplatform.

Читать далее

AI‑агент вместо ручного регресса: архитектура, метрики, инсайты

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели11K

Привет, Хабр! На связи Владимир Бойко, ведущий iOS‑разработчик в Т‑Банке. В статье расскажу, как мы построили AI‑QA‑агента, который проходит тест‑кейсы так же, как это делает человек: запускает приложение на симуляторе, выполняет сценарий шаг за шагом, анализирует экраны с помощью VLM и автоматически сравнивает ожидаемый результат с фактическим.

Идея родилась из бытовой боли. В нашем мобильном приложении десятки тысяч тест‑кейсов, регресс проводится дважды в месяц, и каждый цикл съедает значительную часть ресурсов QA‑команд. Во время регресса QA фактически недоступны для остальных задач. А с учетом санкционных ограничений окна для релизов ограничены и цена пропущенного дефекта возрастает: следующий шанс исправить может появиться не скоро.

Примерно в то же время я заканчивал задачи с VLM для Умной камеры и плотно общался с командой VLM Core — ребятами, которые развивают инфраструктуру мультимодальных моделей внутри банка. Вопрос напрашивался сам собой: а что если агент на базе VLM сможет выполнять эти проверки вместо людей?

Читать далее

Я всегда не любил Duolingo всей душой. Но когда в VibeLing оказалось 70% новичков, то кое‑что сделал так же

Время на прочтение8 мин
Охват и читатели27K

Когда я начинал делать VibeLing, то был уверен — чем больше свободы дает продукт, тем он лучше. Поэтому вместо готового курса сделал приложение, в котором каждый сам решает, что ему учить. Но когда пошел поток пользователей, выяснилось, что проблема была совсем не в количестве возможностей. Большинству не хватало самого простого: понятного следующего шага.

Читать далее

Как разрабатывать приложения для iPhone на iPad

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели5.6K

Звучит как противоречие: iPad стал вполне рабочим инструментом разработчика, а собрать под него (и под iPhone) приложение всё равно нельзя без Mac. Xcode — единственная официальная среда сборки и подписи iOS-приложений — существует только под macOS, и Apple явно не планирует это менять. Значит ли это, что весь цикл разработки придётся выполнять, сидя за компьютером? Нет — если Mac всегда доступен по сети, а с iPad до него можно дотянуться удалённо.

Читать далее

Vivaldi 8.2 для мобильных устройств: Ваш браузер. Ваши правила. Ваши расширения

Время на прочтение3 мин
Охват и читатели7.4K

Vivaldi предоставляет вам все необходимые инструменты для работы в сети. С нашим последним обновлением Vivaldi 8.2 мы даём вам больше — с полной поддержкой расширений на Android, так что вы можете настроить свой мобильный браузер именно так, как вам нужно.

Читать далее

Скорость команды разработки — свойство системы, а не скорость самого быстрого ковбоя на Диком Западе

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели6.1K

Скорость команды часто пытаются измерить количеством сильных разработчиков. Но самый быстрый человек в хаотичной системе обычно не ускоряет команду. Он просто первым начинает компенсировать её проблемы.

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

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

В такой среде архитектура нужна не для красивой схемы. Она нужна, чтобы изменения были дешёвыми.

Читать далее
1
23 ...