Android-разработчик о технологиях, программировании и жизни Автор — @al_gorshkov
5 140подписчиков сейчас
51.0%ERR
18.0цитируемость
4постов/день
Русскийязык
Россиягео
Подписаться в Telegram
Данные обновлены 22.07.2020
Публикации всего: 55
Выбираем своего персонажа 😎
Git --delete-merged
На днях узнал про любопытную команду в Git —
--delete-merged .
Суть простая: команда за один запуск дропает все ветки, которые уже были влиты в origin . Конечно, можно и руками подчистить или промпт скрипт написать. Но командой как-то удобнее.
Работает так:
$ git branch --delete-merged 'origin/*' --dry-run Would delete branch feature/login (was abc1234). Would delete branch feature/login-fix (was def5678). Would delete branch fix/typo (was 9876fed).Посмотрел, убедился, что ничего лишнего — запускаешь без
--dry-run:
$ git branch --delete-merged 'origin/*' Deleted branch feature/login (was abc1234). Deleted branch feature/login-fix (was def5678). Deleted branch fix/typo (was 9876fed).Можно чистить точечно, категориями —
topic-*, feature/*, origin/*.
👍 14 🔥 8 🤔 1
Перейти к публикации →
Почему Android-эмулятор жрёт 8 ГБ?
На днях попался репозиторий с CLI-тулзой, которая обещала уменьшить потребление стандартного эмулятора с ~8 ГБ до ~1,5 ГБ на Apple Silicon и Linux.
Что-то не очень хочется тянуть неизвестную зависимость на свой ноутбук — подумал я, и отправил агента разобраться, чего там внутри.
Выяснилось, что никакой магии нет: просто упакованное использование уже стандартных инструментов.
Вот что можно сделать, чтобы ускорить работу эмулятора:
1. Купить ноутбук с 64GB RAM
2. При добавлении эмулятора выбираем образ «Google APIs», а не «Google Play». Если вам не нужен Play Store, то APIs легковеснее, а ещё на нём работает
adb root.
3. Для начала зайти в Device Manager → Edit → Show Advanced Settings → RAM, и там поставить значение примерно в 2048 MB.
4. Ещё можно отключить ненужные штуки, типа камеры, микрофона или Bluetooth через ~/.android/avd/<NAME>.avd/config.ini
И последний пункт — это запуститься с флагом -lowram вместо запуска из студии. То есть:
$ANDROID_HOME/emulator/emulator \ -avd Pixel_Whatever \ -lowram \ -gpu host \ -no-audio \ -no-boot-animМожет ещё что-то упустил, дайте знать в комментариях.
❤ 16 👍 4 🔥 2
Перейти к публикации →
На днях попалась вакансия мечты
Вроде всё начинается как неплохо: удалёнка, Kotlin/Jetpack Compose/Coroutines, небольшая команда.
А потом целый абзац, который назван High Standards. No Apologies.
This isn’t a 9-to-5. Our team is deeply committed, often putting in 60+ hours a week. We are always pushing to be in the top 1% of our craft.
Самое смешное, что компания занимается умными девайсами для улучшения сна. 😆
Видимо, лучший способ понять проблемы со сном — это сначала создать их своим сотрудникам.
Ну что, откликаться?
😁 52 🏆 6 😨 3 · всего 62
Перейти к публикации →
На днях ревьювил код, связанный с копированием в буфер обмена
И заметил, что многие приложения неверно используют буфер обмена при копировании приватной информации. Типа данных карт, паролей из менеджера или 2FA-кодов.
Существует флаг
IS_SENSITIVE в ClipboardManager.setPrimaryClip(). Если его не проставить — скопированное содержимое оказывается в превью клавиатуры (той самой подсказке над клавишами). Что совсем небезопасно.
Работает всё просто:
// API 33+
clipData.apply {
description.extras = PersistableBundle().apply {
putBoolean(ClipDescription.EXTRA_IS_SENSITIVE, true)
}
}
// API 32 и ниже
clipData.apply {
description.extras = PersistableBundle().apply {
putBoolean("android.content.extra.IS_SENSITIVE", true)
}
}
Ещё стоит не забывать подчищать критичные данные при копировании. Детали можно почитать тут.
Так что если у вас в приложении есть какого-то рода приватные данные — не забывайте заботиться о ваших пользователях. ☺️AirDrop на Android, похоже, уже есть на нескольких моделях Android
Но, оказывается, всё это время была годная альтернатива. Может, вам тоже надо, как и мне.
Есть LocalSend — бесплатный open-source проект, который гоняет файлы и сообщения между устройствами по локальной сети.
Как это работает: устройства в одной Wi-Fi-сети находят друг друга и обмениваются файлами напрямую, без облаков посередине. Работает из коробки на Android, iOS, Windows, macOS и Linux. Под капотом — REST API поверх HTTPS, а сертификат генерится на лету на каждом устройстве.
И... Приложение и правда работает, у меня завелось везде прям из коробки. Отдельно отмечу режим с копированием текста: частенько бывает нужно пошарить какую-нибудь ссылку на соседний девайс.
Похоже, что лично для меня эра «закинь в Telegram на одном девайсе — скачай на другом" закончилась ☺️
🔥 15 👍 4 ❤ 1 · всего 21
Перейти к публикации →
Похоже, есть что посмотреть на выходных
Недавно вышло интервью с Женей Вороновым Jake Wharton. Сам ещё не смотрел, но судя по описанию — интервью годное.
Слышал разные мнения о Джейке, но для меня он является «отцом» многих крутых библиотек на самой заре Android и очень сильным инженером.
В интервью он рассказывает про Kotlin, про увольнение из Google, про текущее место работы и как он его выбрал. И, конечно же, про ИИ.
Олды, кто помнит Actionbar Sherlock?
❤ 22 🔥 8 👍 6
Перейти к публикации →
Google выкатили ARTEMIS
Эта инструмент, который превращает обычный текст в реальные действия на Android-устройстве. По сути, это полноценный агент, который жмёт по кнопкам, как человек.
Что умеет:
• Cross-приложения — например, на демо показали: «построй маршрут в Maps и посчитай суммарное время, потом открой YouTube и включи Coldplay». Вроде даже работает
• Мультимодальный поиск элементов — сначала пробует по индексу, если не вышло — по координатам и визуально. В общем, старается не упасть на ровном месте
• MCP для IDE — Antigravity, Claude Code, Windsurf напрямую рулят тестовым девайсом и собирают Logcat + скриншоты
• Два режима — Flash (реактивный цикл, 3–5 сек на шаг) и Pro (проверка цели перед каждым действием, восстановление после блокировок)
Результат на AndroidWorld от Google Research — 99%+ выполненных задач из сотни многошаговых сценариев.
Запуск простой:
git clone https://github.com/google/artemis.git && cd artemis ./start.shСкрипт сам поставит ADB, scrcpy, FFmpeg и Python-зависимости, поднимет локальный сервер на
localhost:8000 с визардом подключения, зеркалом экрана и песочницей для промптов.
Для IDE есть нативный MCP-сервер:
uv run artemis mcp --install allИ отдельный файл
rules.md — чтобы ассистент вёл себя как senior mobile QA-инженер и не выдумывал несуществующие элементы интерфейса.
Мне кажется, что если всё работает именно как заявлено — это прям топовое обновление в рамках автоматизации Android-тестов.
Что думаете?
🔥 15 ❤ 6 👍 6 · всего 29
Перейти к публикации →
Кстати, вчера забыл про очень важный день...
День погонщиков нейронок программиста!
С нашим профессиональным праздником нас, хоть и на день позже. Несмотря на непростые и тревожные времена — желаю вам держать руку на пульсе, профессионально расти, находить работу мечты и делать свои топовые проекты.
С праздником!
❤ 20 👍 4
Перейти к публикации →
Новый iPhone вышел на днях, вы помните?
Наверное, самым ярким вау-эффектом после презентации осталась анимация открытия и закрытия нового iPhone.
Кто-то может подумать, что такую анимацию нельзя повторить на Android, а оказывается — чуть-чуть AGSL shaders + Jetpack Compose + работы с сенсорами — и вот, готовая анимация.
Если честно, не знаю, зачем оно нужно, может только как вау-эффект
👍 29 🔥 10 🤩 1
Перейти к публикации →
История названий канала
14.08.2026
название
Android Live ?
→
Android Live🤖
Дата — момент, когда изменение заметил наш обход.
Rozetked
ВИЛСАКОМ РЕД / WYLSACOM RED
Библиотека программиста
[netstalkers]
Типичный программист
СТАС БОМБИТ