
Получите клиентов в любой нише!
Делегируйте запуск рекламы нам — бесплатно
Подробнее
7.1

Android/iOS Разработка | Денис Долгополов
Авторский блог об Android / iOS-разработке и программировании с собственными иллюстрациями и авторскими текстами
Основная аудитория канала - Android и iOS мобильные разработчики
Поделиться
В избранное
Купить рекламу в этом канале
Формат:
keyboard_arrow_down
- 1/24
- 2/48
- 3/72
- Нативный
- 7 дней
- Репост
1 час в топе / 24 часа в ленте
Количество:
%keyboard_arrow_down
- 1
- 2
- 3
- 4
- 5
- 8
- 10
- 15
Стоимость публикации:
local_activity
8 391.60₽8 391.60₽local_mall
0.0%
Осталось по этой цене:0
Последние посты канала
imageИзображение не доступно для предпросмотра
Осторожно, кринж
Попросил нейросеть написать стих про Android-разработчика. Она выполнила задание с первого раза:
Fragment-осколки в ViewModel-реке,
LiveData танцует в Lifecycle-ручье.
Jetpack-крылами взлетает за грань,
Где Room хранит секреты, как древний талисман.
Dagger-остротой разрезает тьму,
Coroutines плетут асинхронную мглу.
RecyclerView — его ритмы-маски,
А в Stacktrace — тайный шифр Пизанской башни.
ANR-демоны грызут тишину,
Но Proguard-магия стирает войну.
CI/CD — его алхимия в бойне,
Чтоб APK стал цифровой иконой.
Flutter-соперник? Не страшен мираж —
Compose-канвасом он рисует пейзаж.
API-бездны покоряет в прыжке,
Где Firebase звёзды горят на песне.
Его Git-хроники — вечный полёт,
Где Merge Conflict — лишь тень на восход.
Android-магнат, в его коде — эпоха,
Сквозь NullPointer — к звёздам прорвётся вздох! 🚀
@dolgo_polo_dev
677
16:00
16.03.2025
#рекомендация
Есть такой канал пропока еще мобильную разработку – Everlasting Loops
В нём можно встретить как популярные вопросы с собеседований, так и неочевидные инсайты, особенности IDE-шного тулинга,контрибьют в Kotlin (ну… как-нибудь), или же просто фан-факты
А также почему ломается Unity, зачем котлину public и чего можно ожидать от лямбды
И сначала думаешь, что вроде бы шаришь, а потом хоп – и вот ты уже гуглишь, что это за guards
Если crossinline уже выучил
Есть такой канал про
В нём можно встретить как популярные вопросы с собеседований, так и неочевидные инсайты, особенности IDE-шного тулинга,
А также почему ломается Unity, зачем котлину public и чего можно ожидать от лямбды
И сначала думаешь, что вроде бы шаришь, а потом хоп – и вот ты уже гуглишь, что это за guards
Если crossinline уже выучил
810
15:31
14.03.2025
imageИзображение не доступно для предпросмотра
12 марта в 16:00
Онлайн-дискуссия: опыт работы с локальными, публичными и зарубежными мобильными фермами
Selectel приглашает на встречу, где эксперты по мобильному тестированию и разработке поделятся личным опытом работы c мобильными фермами и обсудят:
- Плюсы и минусы локальных ферм,
- Стоит ли полагаться на зарубежного провайдера,
- Можно ли заменить ферму качественной автоматизацией.
Мероприятие бесплатное. Зарегистрироваться в дискуссии и задать вопрос можно по ссылке: https://slc.tl/7526h
Чтобы не пропустить встречу и узнавать о митапах, воркшопах и бесплатных курсах Selectel, подписывайтесь на @selectel_events
Реклама. АО «Селектел», ИНН 7810962785, ERID: 2Vtzqxdatfx
Онлайн-дискуссия: опыт работы с локальными, публичными и зарубежными мобильными фермами
Selectel приглашает на встречу, где эксперты по мобильному тестированию и разработке поделятся личным опытом работы c мобильными фермами и обсудят:
- Плюсы и минусы локальных ферм,
- Стоит ли полагаться на зарубежного провайдера,
- Можно ли заменить ферму качественной автоматизацией.
Мероприятие бесплатное. Зарегистрироваться в дискуссии и задать вопрос можно по ссылке: https://slc.tl/7526h
Чтобы не пропустить встречу и узнавать о митапах, воркшопах и бесплатных курсах Selectel, подписывайтесь на @selectel_events
Реклама. АО «Селектел», ИНН 7810962785, ERID: 2Vtzqxdatfx
1100
12:04
07.03.2025
imageИзображение не доступно для предпросмотра
У каждого http-запроса и ответа есть заголовки (они же headers, они же мапка ключ-значений)
Но есть нюанс, о котором почему-то не написано красными большими буквами во всех гайдах по Retrofit/OkHttp
Если на мобилке добавить в хэдер запрещенный символ или бэк пришлет такой символ, то сетевой запрос крашнется, выкинув исключение
Актуальный список разрешенных символов можно найти в коде:
okhttp3.Headers.checkValue()
okhttp3.Headers.checkName()
сейчас это:
c in '\u0021'..'\u007e'
c == '\t' || c in '\u0020'..'\u007e'
Например, в хэдере нельзя передавать знак рубля ₽ или иконки гендеров ♂♀
@dolgo_polo_dev
1400
14:17
04.03.2025
imageИзображение не доступно для предпросмотра
запись докладов
📱 в VK Видео
📱 на YouTube
всем, кто дошел оффлайн и смотрел онлайн, привет 😉
@dolgo_polo_dev
всем, кто дошел оффлайн и смотрел онлайн, привет 😉
@dolgo_polo_dev
1900
18:00
22.02.2025
imageИзображение не доступно для предпросмотра
раз сегодня день рекомендаций, то еще расскажу про митапчик от Ozon, на котором буду выступать в следующую пятницу (21.02.25, вечер, бауманская)
поговорю про подводные камни в проектировании API для SDK, о проблемах ABI и мажорных каскадных релизах
также там будут крутые доклады коллег, слайды с картинками и кейтеринг -> подробности и регистрация
@dolgo_polo_dev
2600
13:47
14.02.2025
imageИзображение не доступно для предпросмотра
☁️Оффлайн-встречи мобильных разработчиков уже в эти выходные!
😉Привет! На связи Coffee&Code — международное сообщество мобильных разработчиков.
😎Приглашаем вас на бесплатные встречи мобильных разработчиков в формате дружеской беседы. Будем обсуждать разработку, делиться опытом, задавать вопросы и просто приятно проводить время в кругу единомышленников.
🤪Пообщаемся на технические темы, обсудим интересные события из мобильной разработки, разберем вопросы с собеседований и поделимся опытом!
🤖 Android | 📱 Mobile | 🍏 iOS
📍СПИСОК ГОРОДОВ
💃Также мы выкладываем интересные технические/полезные видосики в наш YouTube канал и записываем Подкаст! Ждем тебя на встречах!
😉Привет! На связи Coffee&Code — международное сообщество мобильных разработчиков.
😎Приглашаем вас на бесплатные встречи мобильных разработчиков в формате дружеской беседы. Будем обсуждать разработку, делиться опытом, задавать вопросы и просто приятно проводить время в кругу единомышленников.
🤪Пообщаемся на технические темы, обсудим интересные события из мобильной разработки, разберем вопросы с собеседований и поделимся опытом!
🤖 Android | 📱 Mobile | 🍏 iOS
📍СПИСОК ГОРОДОВ
💃Также мы выкладываем интересные технические/полезные видосики в наш YouTube канал и записываем Подкаст! Ждем тебя на встречах!
2100
07:01
14.02.2025
imageИзображение не доступно для предпросмотра
Чаще всего — нативные библиотеки, то есть c/с++ либы, подключенные к приложению
Обычно их в крыcу транзитивно тянут различные Kotlin/Java SDK
Особенность NDK либ в том, что они генерируются под 4 архитектуры отдельно (armeabi-v7a, arm64, x86, x86_64). Поэтому в каждом apk по 4 копии одной c/c++ либы. Если либа весит 5 мегабайт, то в apk попадет 20 мегабатайт
Плюс си плюс плюс код довольно жирный, так как тянет вместе с собой кучу стандартного кода, необходимый для его выполнения. Например, если вы напишите 5 строчек c++ кода, то либа все-равно будет весить минимум 500кб
Нативные либы обычно используют библиотеки по работе с картами, картинками, безопасностью, камерой -> если у вас такое есть, то вероятно в вашем приложении уже есть нативные либы
Топ-2 виновник размера apk — png картинка для экрана "О приложении" конечно
@dolgo_polo_dev
1800
17:01
11.02.2025
🤌 Опытный специалист
Тут надо было 1 строчку кода в 100 файлов добавить
Реально надо, так получилось
Как раньше я бы решил эту задачу:
🔵 поискал инструмент в студии, позволяющий это сделать
🔵 не нашел бы его и загуглил бы "how insert code line in class constructor automatically"
🔵 не нашел бы ответа и решил написать свой скриптик, который бы автоматизировал этот процесс
🔵 через какое-то время мучений понял бы, что нужен не просто скриптик, а целый парсер, чтобы оно отработало даже в корнер кейсах
🔵 пошел бы в GPT AI Capilot Code Generator, чтобы он помог мне в этой борьбе
Но я опытный разработчик. Поэтому скипнул все предыдущие шаги и за 3 минуты перекопировал строчку в 100 файлов вручную
@doglo_polo_dev
Тут надо было 1 строчку кода в 100 файлов добавить
Реально надо, так получилось
Как раньше я бы решил эту задачу:
Но я опытный разработчик. Поэтому скипнул все предыдущие шаги и за 3 минуты перекопировал строчку в 100 файлов вручную
@doglo_polo_dev
2500
17:04
31.01.2025
imageИзображение не доступно для предпросмотра
Очень интересная паста о том, как зашить секретную строку в приложение так, чтобы ее нельзя было вытащить за 1 секунду, используя обычный поиск внутри файлов
Например, вы решили спрятать свой ключ от биткоин-кошелька в apk
Что можно попробовать и что из этого выйдет:
Просто положить строку в val/var/const string или в strings.xml — строка попадет в apk в неизменном виде
Разбить строку на байты и положить в массив byte[] — строка попадет в apk в неизменном виде (случилась оптимизация при компиляции)
new byte[]{'x','y','z'} -> "xyz"
Положить строку в BuildConfig — строка попадет в apk в неизменном виде
Натравить Proguard/R8 на класс со строкой — строка попадет в apk в неизменном виде, proguard меняет только название переменных, но не их значение
Положить зашифрованную строку (например, в base64/sha254...) и декодить ее динамически — вот это уже сработает, за 1 секунду можно будет найти только зашифрованную строку
"eHl6".decodeBase64() -> "xyz"
Но еще за 3 секунды можно будет раздебажить алгоритм шифрования, найдя его в .dex-файлах
Зашить строку в нативный с++ код и обращаться к нему через JNI — строка попадет в apk в неизменном виде
Выводы:
@dolgo_polo_dev
2300
17:02
30.01.2025
close
Отзывы канала
Отзывов нет
Лучшие в тематике
Новинки в тематике
Статистика канала
Рейтинг
7.1
Оценка отзывов
0.0
Выполнено заявок
0
Подписчики:
2.0K
Просмотры на пост:
lock_outline
ER:
--%
Публикаций в день:
0.0
CPV
lock_outlineВыбрано
0
каналов на сумму:0.00₽
Подписчики:
0
Просмотры:
lock_outline
Перейти в корзинуКупить за:0.00₽
Комментарий