4700 скачиваний за три дня. 34 место в топе утилит App Store России. Приложение недели в сообществе Indie iOS Apps. И всё это — приложение, которое просто показывает белую линию на экране.
Простая и регулярная проблема
Приклеить защитное стекло несложно: очищаем экран и ровно размещаем стекло, избегая попадания пыли. Но чёрные рамки стекла и телефона сливаются. Нужен какой-то понятный ориентир. Вам не нужен? Прямо по телефону выравниваете и всё получается отлично? И всё же измерительные приборы придуманы, чтобы убрать элемент случайности и упростить жизнь.
В сервисных центрах за установку стекла берут от 500 до 2000 рублей, но и там их ставят «на глазок». Некоторые стёкла продаются с аппликаторами. Только зачем платить за одноразовую пластиковую рамку, которая в итоге займёт место в мусорном ведре?
От лайфхака к продукту
Отдельно раздражало, когда часть изображения просто «съедалась» криво наклеенным стеклом. Поэтому я нарисовал чёрный прямоугольник с белой границей под размер экрана и сохранил в галерею. Приложил стекло так, чтобы линия была видна полностью, прижал. Идеально!
Проверил идею на друзьях и детях. Даже те, у кого «руки не из того места», смогли наклеить стекло идеально с первого раза. Возможно, главную роль играет скорость — вы сразу видите результат.

Учитывая, сколько в семье айфонов, понял, что простой прямоугольник может стать приложением. Но слишком просто, поэтому докрутим до продукта и добавим:
- Пошаговую инструкцию с видео-туториалом
- Систему оценки результата и статистику
- Весёлое конфетти, если человек доволен результатом
- Полноценный сайт с калькулятором экономии, политикой конфиденциальности, условиями использования
- Поддержку всех iPhone и iPad
Разработка началась в январе 2024 года. Казалось бы, что сложного — нарисовать линию?
Техническая кухня
80 моделей — 80 радиусов
Белая линия должна идеально повторять радиус скругления iPhone. iOS может определить радиус программно, но Apple запрещает использовать приватные методы. Спасибо, что можно получить идентификатор модели: например, iPhone17,1
— это iPhone16 Pro, iPhone17,5
— iPhone 16e. Для 11 дюймового iPad Air на M3 сразу четыре идентификатора: iPad15,3
, iPad15,4
, iPad15,5
, iPad15,6
.
Поэтому делаем таблицу радиусов, сопоставляем модели и рисуем. Выглядит она примерно так:
extension Model {
var screenCornerRadius: CGFloat {
switch self {
// ...
case .iPhone12ProMax, .iPhone13ProMax, .iPhone14Plus: 53.33
case .iPhone12Mini, .iPhone13Mini: 44.0
case .iPhone14Pro, .iPhone14ProMax, .iPhone15, .iPhone15Plus,
.iPhone15Pro, .iPhone15ProMax, .iPhone16, .iPhone16Plus: 55.0
case .iPhone16Pro, .iPhone16ProMax: 62.0
// ...
HLS вместо встроенного видео
Одно из ключевых технических решений в ScreenLines — использование HLS (HTTP Live Streaming) для видеоинструкции вместо обычного встроенного файла.
HLS — это протокол потокового видео, разработанный Apple. Вместо одного большого файла видео разбивается на множество коротких сегментов (обычно по 6-10 секунд), которые загружаются по мере необходимости. Каждый сегмент — это обычный .ts файл, а .m3u8 содержит список всех сегментов и метаданные.
Почему не просто файл в приложении?
- Размер: 6 МБ вместо 50+
- Гибкость: можно обновить видео без релиза
- Локализация: разные языки без раздувания
HLS разбивает видео на короткие сегменты по 6-10 секунд. Вместо загрузки всего файла AVPlayer подгружает только нужные части:
- Сегментация: Видео нарезается на мелкие кусочки
- Адаптация: Плеер автоматически выбирает качество под скорость сети
- Кэширование: Просмотренные сегменты остаются в памяти
Некоторые мелочи, недоступные картинке с прямоугольником:
- Экран не должен гаснуть пока клеишь стекло
- Скрываем статусбар, чтобы не отвлекал
- Конфетти за успех — радуемся успеху пользователей
- Сохраняем результаты и ведём статистику

Эволюция помощников
Проекту нужен сайт. Использовал ChatGPT, DeepSeek, Qwen, Gemini — все изображали бурную деятельность, но результат был так себе. Claude оказался единственным, кто подходит для работы. Давно купил подписку и сейчас использую везде. Даже на платной версии есть лимиты на количество сообщений, но результат стоит того.
С енотом, кстати, вышло случайно — просил разные нейросети рисовать что-то абсурдное. ChatGPT предложил такую идею.
Калькулятор экономии
Claude предложил калькулятор — простую, но интересную штуку. Составили таблицу устройств с ценами и простейшей математикой.
const devices = [
{ "model": "iPhone 16 Pro", "serviceCost": 2000, "selfCost": 700 },
{ "model": "iPhone 16 Pro Max", "serviceCost": 2000, "selfCost": 550 },
// ...
]
const totalSavings = totalServiceCost - totalSelfCost
Результаты взлёта
- 4700 скачиваний за первые 3 дня
- 34 место в топе утилит русского App Store
- Обогнали «Парковки России и «Столото»
- География: Россия, Нидерланды, Германия, США
- Оценка: 4.9
Приложение попало в топ за три дня. Без затрат на продвижение.
А ещё получило звание Indie App of the Week
Отзывы
А теперь оценки пользователей:
Что дальше?
С MacBook и терпением можно создать продукт, который займёт своё место в App Store и будет доступен во всём мире. Да, вам не обязательны дизайнеры, аудиторы и куча бюрократии. Не нужно согласовывать ни с кем ничего. Просто делайте. ScreenLines показал: в App Store всегда есть место для простых, но полезных решений. Не обязательно создавать сложные платформы — иногда достаточно элегантно решить одну проблему. Но дело не только в этом. Приложение вряд ли так быстро вылезло в топ, если бы о нём не рассказал блогер с аудиторией 788k подписчиков.
Если приложение висит в топе, значит его кто-то скачивает. А это результат продвижения и маркетинга. И это то, что мне предстоит освоить.
P.S. Если у вас iPhone — попробуйте ScreenLines. Бесплатно.
P.P.S. Енот передаёт привет 👋
P.P.P.S. Оказывается, Георгий Лямин, главред iGuides, тоже написал про ScreenLines в своём канале. Спасибо!