Обновить
256K+

Android *

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

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

GitHub templates через bash скрипт

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

Всем привет! Меня зовут Роман Аймалетдинов, я андроид разработчик. В этой статье хочу рассказать вам как автоматизировать, хоть и простую, но рутинную работу по созданию и оформлению ваших git-hub pull request через bash скрипт. Это особенно полезно, если у вас монорепозиторий или несколько типов template. Например, отдельные template для bug и для feature или для разных команд. Но не все сразу, сначала разберемся с самими templates, поймем, почему это может быть неудобно и сделаем свой скрипт, который умеет парсить название в человеческое и создавать удобное описание для каждого типа задач. Теперь все по порядку.

Читать далее

Пост post-mortem: разбираемся, почему Google Play Protect посчитал 2ГИС вредоносным ПО

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

Что случилось

10 января Google Play Protect ошибочно посчитал 2ГИС вредоносным приложением. 

Пользователи 2ГИС на Android начали получать системное сообщение, что 2ГИС — вредоносное приложение. Мы стали массово получать сообщения от пользователей и разбираться в ситуации. 

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

Читать далее

Мобильная разработка за неделю #521 (8 — 14 января)

Время на прочтение4 мин
Охват и читатели2.9K
Возвращаемся с нашим мобильными дайджестами! В первом в этом году про влияние AnyView на производительность, “вредоносность” 2ГИС, золотой век Kotlin и его неопределенное будущее, годовой отчет Data.ai и многое другое. Подключайтесь!

И подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

2ГИС — опасное приложение?

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

Пользователи 2ГИС на Android начали получать системное сообщение, что 2ГИС — приложение вредоносное, оно опасно для устройства и личных данных.

Если коротко — конечно же, это не так. 2ГИС всегда соблюдал все правила и продолжает это делать. Более того, в новых версиях приложения ничего принципиально не поменялось, и мы пытаемся выяснить, почему Google считает нас вредоносными.

Под катом — подробнее, в чём дело и как быть UPD от 13 января, 15:00 Мск

UPD 15 января, 11:00 Мск
Вынесли в отдельный пост-post-mortem ответы на вопросы и всё, что известно на сегодняшний день.

Читать далее

Гайд по Scratch для детей: как запустить игру на Android

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

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

Читать далее

Как я попробовал написать авиасимулятор

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


Давным-давно, в 2015 году я написал свою первую статью на хабр: Пишем простую* игровую физику самолёта


Статья появилась не сама по себе — я писал игру, но так её и не доделал. За предыдущие девять лет я несколько раз возвращался к проекту, что-то улучшал, но по-факту он так и остался на уровне прототипа.


В итоге я решил открыть исходники под MIT-лицензией, чтобы кто угодно мог их посмотреть или как-то переиспользовать: репозиторий на gitlab


Если интересно почитать о процессе, удачных и неудачных технических решениях и т.п. — читайте дальше.

Читать дальше →

Пример исследовательского реверс-инжиниринга приложения Zone Launcher

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

Друг порекомендовал приложение, но купить его не получилось с территории России. Статья о том, как поисследовать приложение до той степени, чтобы покупка потеряла свою актуальность. Может быть полезно почитать и разработчикам, чтобы понимать, что полную версию приложение включить достаточно легко.

Читать далее

Простой вопрос по Android Core, на который даже сеньоры отвечают неправильно

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

Мне кажется, я придумал очень простой вопрос по Android, но жаль, что не все поймут в чём же дело.

Хочешь проверить свои знания? Тогда заходи.

Читать далее

Зачем и как в Альфе была написана библиотека для скриншот тестов под Android

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

В статье расскажу о проблемах и неочевидных моментах скриншот тестов в контексте Android, и постараюсь погрузить вас в то, как это может работать (и как мы это сделали в Альфе)

Что же там дальше

Это всего лишь опрос. Кто-то хочет черно-белый e-ink сенсорный мобильный телефон, который работает 14 дней?

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

Никаких видео. Только тексты и вообще все черно-белое. Для работы. С хорошей батареей можно ведь такой и на 30 дней растянуть.

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

Читать далее

Когда закончится эра безграмотных мобильных интерфейсов? Воспоминания о курсе эргономики 1985 года

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

Друзья, вы уже в курсе, что IOS достигла версии 17, а Android версии 12? Уже более 10 лет как две огромные фирмы мучают людей и совершенно не собираются умнеть.
Начнем с простого действия. Которое на компьютерах называется ESC. Отмена. Или возврат к предыдущему состоянию. Функция та же что и у BACKSPACE, но не в применению к набору текста, а к любому действию, которое захотелось отменить.
Apple упорно лишает пользователей телефонов и планшетов этой функции.

Это явное насилие, ибо понять почему на клавиатуре нет этой кнопки невозможно. Тем более, что на компьютрах Apple она имеется. Но в планшете iPad ее нет.

Андроидные телефоны имеют кнопку назад. Сразу имели. А вот Apple сделала позорную недокнопку в левом верхнем углу. Вроде бы нужная кнопка что бы вернуться в предыдущее приложение, да вот заранее не предусмотрели и пришлось встраивать "костыль".

Вот я из "Почты" нырнул в какое-то приложение. И возврат обратно вот такой мизерной незаметной строчкой. < Mail. Попасть в нее пальцем ну мягко говоря не просто. Равно как и разглядеть.

Читать далее

NativeScript в мире кроссплатформенной разработки

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

Давайте знакомиться! Меня зовут Игорь. Я разработчик кроссплатформенных мобильных приложений в компании Smartex. В этой статье я расскажу о NativeScript, основных преимуществах платформы и ее недостатках.

Материал будет полезен не только разработчикам, которые уже пишут приложения на React Native, Ionic, Framework7, а также тем, кто собирается погрузиться в разработку кроссплатформенных мобильных приложений на JavaScript.

Погнали!

Свой путь в кроссплатформенную разработку я начал за пределами Smartex, с Cordova + Framework7.

Framework7 это как и Ionic просто UI-библиотека для создания интерфейса которая в последующим просто отрисовывается через WebView. Само приложение (общение с API платформы) создается на платформе Cordova или Capacitor, как раз они и создают экран с WebView и транслирует туда HTML.

Framework7 прекрасно работает с Vue, но по ряду причин он начал меня подбешивать. Я хотел найти инструмент именно для нативной разработки, а не на технологии основанной на WebView. Стал смотреть в сторону Angular, и какие вообще есть на рынке технологии для разработки нативных кроссплатформенных приложений с Angular под капотом. Так я и познакомился с NativeScript.

Читать далее

remember «Forever». Как сохранить скролл при уходе с экрана

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

Всем привет! Меня зовут Константин и я лид мобильной команды в финтех компании PeterPartner.

В этой статье решим проблему сохранения состояний экрана при навигации между экранами используя Jetpack Compose

Читать далее

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

Мобильная разработка за неделю #520 (18 — 24 декабря)

Время на прочтение5 мин
Охват и читатели2.7K
В этом дайджесте «условное ценообразование» для подписок и как управлять сложностью состояния, еще одно проигранное дело Google и как компания смогла проиграть там, где Apple выиграла, как почувствовать себя кассиром, анимации переходов во Flutter, рефакторинг кода и многое другое!

Подписывайтесь на на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

Читать дальше →

Подключение сканера к Android или как почувствовать себя кассиром

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

Недавно на одном из проектов мне потребовалась поддержка беспроводного сканера и получение с него данных.

Итак, наша основная задача – получить данные со сканера в нашем собственном приложении и как-то их использовать, в этом руководстве мы их просто выведем на экран. В качестве примера возьмём 2D сканер Mertech CL-2210.

Читать далее

Just DUIT — первый взгляд на server-driven UI фреймворк для Flutter

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

Зачастую мобильные разработчики сталкиваются с проблемой невозможности быстрого delivery какой-то функции до пользователя. Для обхода этого ограничения мобильных платформ существуют самые разные инструменты и подходы: DivKit, СodePush и другие. И сегодня я хочу осветить новый Server-driven UI фреймворк для Flutter, который в некоторой степени может разрешить эту боль.

Just DUIT!

Разработка мобильных приложений для бизнеса: как создавать кроссплатформенные решения быстро и относительно дешево

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

Как аутсортсинговой компании к веб разработке добавить мобильную разработку.

За этот год мы силами одной команды разработчиков создали с нуля и зарелизили 6 приложений для Android и iOS. В этой статье я расскажу, как выстроить процесс, чтобы быстро создавать качественные продукты, как кроссплатформенная разработка на Flutter помогает экономить время и деньги, а также, сколько стоит разработка приложения для бизнеса и из чего складывается цена.

Читать наш опыт

Stone. Квалификаторы и идентификаторы

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

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

Собственные решения для разработчика развивать и разрабатывать оказалось крайне удобно. Архитектура библиотеки и ее фичи разрабатывались под конкретные задачи в проектах. И особенный случай в проекте, заставил переосмыслить всем привычные квалификаторы для DI, и добавить что-то новое.

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

Читать далее

Как подготовиться к собеседованию по System Design мобильному разработчику

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

В последнее время рынок труда в ИТ-индустрии переходит от рынка соискателя к рынку работодателя и компании все чаще заинтересованы в отборе максимально опытного специалиста, удовлетворяющего всем требованиям. Скорее всего вы слышали о недавних сокращениях в BigTech-компаниях, специалисты из которых наводнили рынок и теперь рубятся за позиции в компаниях поменьше. Однако стандартные наборы вопросов уже давно изжили себя, и большинство как российских так и зарубежных компаний стараются выбирать форматы собеседований которые максимально помогают проявить кандидата в бою. Одним из таких форматов является System Design Interview о котором мы и поговорим сегодня.

Я занимаюсь мобильной Android-разработкой уже более 10 лет и в данный момент являюсь тимлидом платформы Android. За свою карьеру я провел более 200 собеседований как нанимающий менеджер и сам тоже проходил собеседования как в крупные российские так и зарубежные компании. Поэтому у меня накопилось много советов и рекомендаций которыми я хочу поделиться.

Эта статья будет полезна как кандидатам которые хотят “взломать” System Design интервью, так и руководителям в сфере мобильной разработки, желающих внедрить секцию System Design в своей компании.

Читать далее

Модульная запутанность. Как распарсить одну модель в разных модулях

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

Меня зовут Константин и я лид мобильной команды в финтех компании PeterPartner.

Хочу поделиться тем как распарсить одну модель с бекенда в разных Impl модулях. И немного о многомодульных приложениях в целом.

Читать далее