Как стать автором
Обновить
51.15

Разработка под Android *

Пишем под самую популярную мобильную ОС

Сначала показывать
Порог рейтинга

Всем доброго дня. Представьте, что есть система, которая автоматически генерирует технические спецификации и документацию для разработчиков на основе описания проекта.

Фичи:

Генерация структурированных документов в Markdown/PDF

Интеграция c Jira/Confluence

Возможность автоматической генерации диаграмм (ERD, Sequence)

Полезно ли это/пользовались бы сами?

Теги:
+4
Комментарии2

Пишем приложение для поиска объектов на С++ (а не на Python)

Результат работы приложения по поиску объектов на С++
Результат работы приложения по поиску объектов на С++

Приложения по поиску объектов, написанные на С++, работают ничуть не хуже привычных вариантов на Python. На это есть несколько причин:

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

  • C++ не использует дополнительный сборщик мусора для управления памятью — это существенно влияет на производительность программы. 

  • Размер программы также можно уменьшить, поскольку C++ не использует дополнительную виртуальную машину и компилируется непосредственно в машинный код.

Это хороший выбор для мобильных устройств с ограниченным объемом ресурсов, например, телефонов или маломощных плат, которые используются в робототехнике или видеоаналитике.

Если хотите написать такое приложение, изучите материалы инженера YADRO и ML-энтузиаста Кирилла Колодяжного. Он подробно описал, как реализовать программу на С++ с применением библиотек компьютерного зрения.

Подготовительная часть →

Практическая часть →

Теги:
Всего голосов 6: ↑6 и ↓0+8
Комментарии0

Google Play с 26 декабря 2024 года приостанавливает на неопределенный срок проведение платежей за приложения разработчикам с банковскими счетами, зарегистрированными в России.

В марте 2022 года Google отключил показ рекламы в России, а позже прекратила монетизацию просмотров на YouTube для российских пользователей на YouTube. Это не затронуло аудиторию из других стран. В мае того же года компания запретила российским разработчикам загружать и обновлять платные приложения в Google Play, что лишило их возможности монетизации в России.

Теги:
Всего голосов 6: ↑4 и ↓2+3
Комментарии1

Да кто такой этот ваш билд-инженер?

Гость нового выпуска Android BroadcastСергей Боиштян, Android-инженер в Авито. Сергей обсуждает профессию билд-инженера с ведущим подкаста Кириллом Розовым. Вот про что говорят:

  • с какими задачами приходится сталкиваться в практике;

  • какой прогресс достигнут в Gradle и Android Gradle;

  • какое будущее нас ждёт в сборках Android и Kotlin Multiplatform-проектах.

Сергей знает, о чем говорит, ведь он из команды Speed: эти ребята у нас занимаются developer experience для Android-разработчиков Авито. Проще говоря — позволяют нашим инженерам сфокусироваться на написании фичей, пока такие богатыри, как Сергей, разбираются с версионированием, библиотеками и прочими штуками.

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

Подписывайтесь на канал AvitoTech в Telegram, там мы рассказываем больше о профессиональном опыте наших инженеров, проектах и работе в Авито, а также анонсируем митапы и статьи.

Теги:
Всего голосов 17: ↑17 и ↓0+17
Комментарии0
2

Согласно данным, технология PWA стала популярнее среди мессенджеров, банков, интернет-магазинов и других видов компаний.

Основные плюсы прогрессивных веб-приложений касаются пользовательского опыта: здесь есть преимущества как по сравнению с вебом, так и с нативными приложениями. Рассмотрим эти особенности подробнее.

1. Устанавливаются в обход сторов.

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

2. Работают в офлайн-режиме.

Прогрессивные приложения может работать в автономном режиме без соединения с сервером.

3. Загружаются за секунду. 

PWA загружаются очень быстро благодаря HTML-отдаче. С момента загрузки до появления первого элемента или изображения обычно проходит не более 1 секунды.

4. Весит меньше мегабайта. 

В отличие от нативных приложений PWA занимает менее 1 Мб в памяти смартфона. 

5. Эффективно адаптируется под устройство. 

PWA подстраиваются под любое пользовательское окружение. Они работают на всех возможных системах, устройствах и браузерах. 

6. Выглядит привычно для пользователя. 

При загрузке PWA пользователь может установить ярлык или иконку приложения на экран смартфона.

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

Теги:
Рейтинг0
Комментарии0

Всем привет! Сегодня поговорим о PWA.

Прогрессивное веб-приложение (PWA) — это гибрид обычной веб-страницы и мобильного приложения. Оно сочетает в себе функции большинства современных браузеров с преимуществами мобильных приложений и создаётся с использованием стандартных веб-технологий, включая HTML, CSS и JavaScript.

Функциональные возможности включают работу в автономном режимеpush-уведомления и доступ к аппаратуре, что создает аналогичный нативным приложениям опыт работы для пользователя.

Некоторые из крупнейших в мире компаний, такие как Twitter, Instagram, Uber, Pinterest, Forbes, Alibaba и другие, уже используют PWA.

Согласно сообщению из CNBC, к 2025 году почти три четверти населения мира будут использовать для доступа к интернету только смартфоны. Поэтому, если вы планируете создать новый веб-сайт или редизайнить старый, вам следует задуматься о создании PWA.

Теги:
Всего голосов 5: ↑1 и ↓4-3
Комментарии8

iOS vs Android: большая битва платформ. Что лучше для разработчика, бизнеса и простого пользователя

В извечном вопросе о «лучшей мобильной платформе» попробовали разобраться вместе с инженерами Сравни: Android-разработчиком Русланом Кадыровым и iOS-разработчиком Константином Китаевым.

Обсудили, как платформы различаются в плане технологий и пользовательского опыта, под какую из них проще разрабатывать и может ли «многообразие Android» успешно конкурировать с «магией Apple».

Также в выпуске:

  • Состояние мобильной разработки — есть ли кризис?

  • Развитие разработчиков для iOS и Android: полезные материалы и практики

  • Превосходство Android Studio над XСode?

  • Когда наступит кроссплатформенное будущее?

Посмотреть или послушать Sravni Podcast можно здесь:

YouTube
RUTUBE
VK
Яндекс Музыка

Оперативно узнавать о наших новых подкастах, докладах, лекциях и других полезных ИТ-материалах можно в тг-канале Sravni Tech.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Новости ноября из мира Android-разработки уже на 📹 YouTube и 📹 VK Video

🤖 Изменения в графике релизов Android, начиная с 2025 года
🏝 Новая KMP IDE от JetBrains — часть плана развития Kotlin Multiplatform (KMP) на 2025 год
🔨 Новинки Gemini AI в Android Studio
📸 CameraX 1.4 — новый релиз с массой фичей

Не пропустите полезный выпуск для всех, кто хочет быть на волне новинок в Android-разработке! 🤖

Теги:
Рейтинг0
Комментарии0

Чебурашка

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

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

Погрузившись в себя, я начал обдумывать, как помочь ему в этом сложном и важном деле, да и долг перед ним поджимал (лучше не используйте инвестиции донных дельцов). Долго ли коротко, открыв в очередной раз приложение зелёного банка, я обнаружил новую функцию по снятию денег со своего счёта через авторизацию по QR коду - и тут я увидел решение своего маленького вопросика для больших денег.

Пересылать фото банкомата в секретных чатах? Это не путь настоящего обнальщика.

Схема такая: Сервер для обмена видео по RSTP + Фельдману и Шило по Android телефону, где отправителю денег предаётся видео через эмулирование камеры с камеры получателя.

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

MVP проекта (вход рубль - выход десять лет по 7 части статьи 159 УК РФ)

Теги:
Всего голосов 6: ↑4 и ↓2+5
Комментарии1

🪐  WebView в фоне

источник: https://t.me/dolgo_polo_dev/153

Интересный небольшой факт — WebView может загружать страницы без отображения самой WebView на экране

Можно вызывать WebView(context).loadUrl(url) не отображая WebView на экране и не добавляя ее в верстку

С помощью этого можно:

  • настроить prefetch страниц — загрузить страницы заранее в фоне, чтобы не мучать пользователя долгим открытием

  • закэшировать страницы заранее (если включить кэш WebView и прислать хэдер cache-control)

....

еще по теме:

остальные посты 👉 https://t.me/dolgo_polo_dev

Теги:
Всего голосов 4: ↑4 и ↓0+6
Комментарии1

https://gist.github.com/Muraveiko/aa38f6a2670871b6e2aba00eb6d152b9

Хотел прикрутить обрезку картинок через штатное приложение камеры (com.android.camera.action.CROP). Накидал код контракта. Круто же по современному myCrop.launch() и код чистенький при использовании. А оно для моих целей не подходит. Готовую картинку можно получить или как parcel битмапа или в виде uri на новое приложение. Сразу не подумал, что мне нужно БОЛЬШУЮ. А если мне урл на нее возращают, значит обрезанная картинка большого размера остается в галерее :(

В общем жалко просто выкинуть. Может кому потом меньше кода писать будет.

Теги:
Рейтинг0
Комментарии0

База для начинающих Android-разработчиков

О профессии и главной IDE

Как стать Android-разработчиком и расти в профессии — чем занимается разработчик, что должен уметь, перспективы карьеры.

Как пользоваться Android Studio — инструкция для начинающих. Рассказываем о возможностях программы, помогаем настроить и запустить.

О языках программирования

Почему почти все приложения для Android написаны на Kotlin — рассказываем об официальном языке для разработки.

5 популярных языков для мобильной разработки — не всё можно сделать с помощью Kotlin.

Два полезных инструмента

Gradle — поможет автоматизировать сборку приложений.

RecyclerView — пригодится для отображения данных в приложениях.

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии1

Обновление «окирпичивает» смартфоны Samsung. Кто виноват и что делать?

Кажется, компании соревнуются в наплевательском отношении к пользователям: теперь досталось владельцам Samsung. После обновления устройства начинают бесконечно перезагружаться, причём проблема коснулась устройств пятилетней давности, включая и Galaxy S10 и Note 10. Виновата ли компания и что делать пользователям?

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

Вот и сэкономили, особенно на старых моделях. На наш взгляд, производителю стоило пойти до конца и предусмотреть возможность неудачного обновления. Проблема со слишком большим сочетанием железа и набора ПО известна, регулярно даже у самых больших производителей что-то идёт не так. Так почему бы в ПЗУ не зашить базовую прошивку и не назначить комбинацию клавиш для возврата к ней?

А пользователям можем только посочувствовать и настроить бекапы. Техника относительно дёшева, продаётся миллиардными тиражами, и даже при 99,999% надёжности кто-то будет страдать от брака, глюков и в итоге потери данных. Но облачные сервисы тоже недороги, поэтому проще сразу наладить дублирование информации.

Теги:
Всего голосов 14: ↑14 и ↓0+24
Комментарии1

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

25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

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

Практическая часть.
Телефон.

Не работают большинство российских операторов. Грузинские тоже не работают.
Работает российский Теле2. Сори за невольную рекламу.

Адрес.
С подтверждением адреса тоже проблема. Мой грузинский договор аренды они не приняли, сказали такого документа не знают.
Скан российского паспорта с пропиской тоже не приняли. Сказали, что документы из этой страны не принимают. Это, кстати, мог бы быть настоящий повод для возмущения в СМИ.
В итоге их устроила выписка со счета из банка с адресом. Сделал ее в Bank of Georgia. Что интересно, выписка делается через чат в приложении. Адрес можно назвать любой, никто не проверяет.

Итого, пройти верефикацию возможно. Но не факт, что с российским адресом.
С гуглом происходит какая-то хрень.

Спасибо за внимание.

PS: Мы подтвердили аккаунт и скоро стартуем наше приложение "Что почитать?"
А пока подписывайтесь на наш канал

Теги:
Всего голосов 6: ↑4 и ↓2+5
Комментарии2

«Мидл Android-разработчик» — новый курс Яндекс Практикума

Курс «Мидл Android-разработчик» — это углубленная 5-месячная программа, предназначенная для Android-разработчиков с опытом. Курс ориентирован на максимальное расширение прикладного кругозора разработчика. 

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

Вы научитесь тому, что отличает опытного разработчика от новичка:

  • Освоите современные архитектурные паттерны: научитесь применять принципы SOLID, Clean Architecture, а также работать с современными архитектурами UI, такими как TEA и MVI;

  • Сможете создавать сложные компоненты Jetpack Compose с анимациями, чтобы разрабатывать современные и эффективные пользовательские интерфейсы;

  • Изучите технологии, которые помогут решать разные задачи при разработке: интегрировать в приложения аудио и видео, разрабатывать функции с использованием геолокации;

  • Поймёте, как обеспечить стабильную работу приложения и оптимизировать его: освоите UI- и юнит‑тесты, научитесь настраивать CI/CD и оптимизировать приложение перед публикацией в Google Play.

Наши эксперты — опытные разработчики из Яндекса, Авито, Т-Банка и других топовых компаний, которые давно работают с Kotlin. Они составили программу, опираясь на свой опыт, поэтому вы будете учиться тому, что на самом деле пригодится.

Узнать о курсе подробнее

Теги:
Всего голосов 5: ↑4 и ↓1+5
Комментарии0

Не пытайтесь, это React Native + Flavor

Инсайт дня: React Native и flavor

В компании где я работаю, существует приложение написанное на нативных технологиях в лице — Kotlin/Swift.

Так вот, в приложение на андроид реализована система flavor, практически для более чем 80 компаний.

Попытка удешевить разработку, привела нас к React Native, так как у меня был немалый опыт разработки и работы с данным фреймворком.

С первого взгляда не было очевидно, но… оказывается в React Native поддержки подобного попросту нет от слова совсем.

Конечно, любой скажет «да ведь просто можно использовать переменную флейвора текущего приложения, и менять контент условностями» — но все не столь однозначно и просто… (ведь требование и цель использовать все преимущества этой концепции)

Как итог, если вы хотите реализовать концепцию flavor в полной мере, используя React Native (и вы четко понимаете как это работает в нативе) — то предупрежу сразу что у вас не получится, банально из‑за того, что вы получаете возможность настроить лишь ваши иконки и заголовки, ну и настройки на уровне андроид конфигов =)

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии1

Как OkHttp-клиент выполняет сетевой запрос под капотом

основные Interceptor-ы OkHttp. Взято из блога: https://t.me/dolgo_polo_dev/144
основные Interceptor-ы OkHttp. Взято из блога: https://t.me/dolgo_polo_dev/144

Коротко:

OkHttp-клиент — самый популярный сетевой клиент на Android, поверх которого часто используют Retrofit

Главное — он умеет много всего из коробки:

  • записывать/читать кэш, управлять им с помощью хэдера cache-control

  • управлять cookie и разруливать их атрибуты

  • устанавливать соединение по http1 и http2 (а по http3 нет, завидуем iOS-разработчикам)

  • выбирать сеть, по которой будет выполнен запрос

  • работать с DNS и направлять трафик через Proxy

  • поддерживает разные виды сжатия трафика

  • выполнять сам запрос, то есть как раз передавать байты по интернету. при этом "движок", выполняющий запрос, можно подменить

А возможно это все благодаря Interceptor-ам — цепочке колбеков, позволяющих прочитать/изменить запрос и ответ

Вы можете написать кастомные Interceptor-ы и добавить их в список appInterceptor-ов или networkInterceptor-ов

Или можете залезть в исходники OkHttp и посмотреть на его стандартные Interceptor-ы, в которых как раз и реализована вся вышеперечисленная магия

На картинке:

  • отличия между appInterceptor-ами или networkInterceptor-ами

  • стандартные OkHttp Interceptor-ы и их роль

остальные посты о сети и сетевых клиентах - @dolgo_polo_dev

Теги:
Всего голосов 3: ↑2 и ↓1+3
Комментарии0

Лидерство в коде: технологии, сообщества и корпоративная среда

Привет! Это подкаст «Айтидо» от команды мобильной разработки Альфа-Банка 🎙

Айтидо – путь мобильных технологий. В этом подкасте мастера разработки делятся опытом создания приложений, раскрывая искусство объединения бизнеса, команды и инноваций. Каждый выпуск – это частичка того пути айтидо, который мы выбрали.

В первом выпуске подкаста мы поговорили с Никитой Збитневым, техлидом мобильной разработки

Поговорили о его пути в мобильную разработку через Java, как внедряются новые технологии в финтехе и почему многие переходят из корпораций в стартапы. Никита поделился лайфхаками о том, как он остается на одной волне с командой, развивает сообщество и успевает играть в D&D 🐉

🔗 RuTubehttps://alfa.me/bYzuxc

🔗 YouTubehttps://alfa.me/brD4Lx

🔗 ВКонтактеhttps://alfa.me/66Z_dt

Подписывайтесь на telegram-канал Alfa Digital, там много интересного о нашей корпоративной культуре и технологиях.

Теги:
Всего голосов 5: ↑4 и ↓1+5
Комментарии1

Передаем привет всем Android-разработчикам и спешим поделиться хорошей новостью: хотим провести публичное собеседование с одной большой компанией. Это классный вариант проверить знания, поделиться ими с другими. А еще быстрее найти работу — да вы и сами в курсе.

Нужны спецы уровня middle+

→ а заявки собираем тут

Теги:
Всего голосов 4: ↑2 и ↓2+3
Комментарии0

Каналы по Android и iOS разработке

Много авторского контента и новостных каналов для Android/iOS-разработчиков находится в tg

Но очень плохая система рекомендаций, поэтому многие о них просто не знают

Собрал тут кажется самую большую коллекцию (ссылки ведут на telegram-папки):

🌸 Android — авторские блоги об Android

🌸 iOS — авторские блоги об iOS

🌸 Компании — bigtech-компании и организации

🌸 Подборки/новости/библиотеки

Список будет пополняться, поддерживаю его актуальным тут - t.me/dolgo_polo_dev/135

Теги:
Всего голосов 3: ↑2 и ↓1+1
Комментарии0