Обновить
128K+

Android *

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

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

Deep Dive Into Deep Link. Часть 2. Проблемы: устройство, версия ОС

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

Привет, Хабр! Мы продолжаем серию докладов Deep Dive Into Deep Link. Как думаете, что будет, если перейти по deep link на Samsung A70 и Pixel 2? А на Android 10.0 и 8.0? Кажется, что все будет нормально, мы перейдем в выбранное приложение… Но нет! Сегодня мы разберем два интересных кейса работы deep link на разных устройствах и версиях ОС о которых должен знать каждый.

Читать лонгрид

Дайджест интересных материалов для мобильного разработчика #459 (26 сентября — 2 октября)

Время на прочтение4 мин
Охват и читатели2.2K
В нашей новой еженедельной подборке история Goose Maps и WebView, продолжение неочевидного про Fragment API, перепады высот, эмуляторы, симуляторы, тестовые фермы и многое другое!

Подключайтесь к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.

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

Размер имеет значение! Часть 3

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

Как бы мы себя не обманывали - Размер имеет значение! И конечно, мы будем говорить о размере нашего андроид приложения, куда мы добавляем кучу классных features, и даже не задумываемся как это может негативно повлиять на размер приложения. Поэтому мы научимся обнаруживать регрессию размера нашего приложения на CI для автоматизации этого процесса.

В последней части, оптимизируем процесс обнаружения регрессии размера андроид приложения.

Читать далее

WebView: забыть нельзя интегрировать

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

При разработке мобильного приложения iOS или Android рано или поздно может встать вопрос: «Реализовать фичу на WebView или же нативно?». В некоторых случаях ответ лежит на поверхности, но, к сожалению, так бывает не всегда. А если очень велик соблазн предоставить пользователям новый функционал поскорее — это может склонить к неправильному решению, с которым впоследствии предстоит что-то сделать.

Сегодня мы хотим поделиться с вами тем, какую стратегию мы выбрали в Циан для себя и как к ней пришли. Посмотрим, где же мы поставили запятую :)

Поехали!

На твой телефон пришло новое сообщение

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

Привет! Сегодня я хочу затронуть тему SMS, а точнее, поделиться опытом их «приручения» в Android на примере собственного пет-проекта.

Читать далее

Java из Python (Kivy) и обратно на Android

Время на прочтение6 мин
Охват и читатели8.6K
main

Продолжение статьи C/C++ из Python (ctypes) на Android. Теперь поговорим о том как использовать Java из Python, ведь для android это родной язык и почти все работающие библиотеки и нужные вещи написаны на нем. Научимся создавать классы, вызывать методы, возвращать результат и дергать callback-и. На Linux аналогично работает.

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

Неочевидное про Fragment API. Часть 2. (Не) создаем инстанс

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

Всем привет! Меня зовут Максим Бредихин, я Android-разработчик в Тинькофф. А это — вторая статья серии об интересных моментах из Fragment API, о которых вы, возможно, не знали.

Готовьте вкусности, сегодня я расскажу, как (не) создавать новые инстансы фрагментов.

Читать далее

Дайджест интересных материалов для мобильного разработчика #458 (19 — 25 сентября)

Время на прочтение4 мин
Охват и читатели2.7K
В нашем новом дайджесте переход на Metal и динамические острова, сложность корутин и диплинков, всплывающие окна, A/B-тесты, маркетинг eCommerce приложений, мобильные финансы и многое другое.

Подключайтесь также к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.

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

Размер имеет значение! Часть 2

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

Как бы мы себя не обманывали - Размер имеет значение! И конечно, мы будем говорить о размере нашего андроид приложения, куда мы добавляем кучу классных features, и даже не задумываемся как это может негативно повлиять на размер приложения. Поэтому мы научимся обнаруживать регрессию размера нашего приложения на CI для автоматизации этого процесса.

В данной части, обсудим как можно проверять размер в pull request, что позволит автоматизировать весь процесс обнаружения регрессии, до того как изменения попали в development.

Читать далее

Ликбез по диплинкам. Часть 2: диплинки с нуля

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

Если вы хотите сделать так, чтобы ваши пользователи могли напрямую попасть в определенную часть внутри вашего приложения, например, когда вы отображаете предложение оформить подписку, выводите просьбу обновить свой профиль или переносите пользователя в корзину в приложении для покупок, диплинки (deep links или глубинные ссылки) могут помочь вам с этим.

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

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

Читать далее

Жизнь выдающихся программистов. Джей Фриман (saurik)

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

Прошлая серия про талантливую программистку Джастин Танни не оставила равнодушной хабрасообщество. Поэтому продолжаем заполнять нижние строчки хит-парада выдающихся программистов 21 века. Это особенные личности, которым карьера как будто не важна. В силу высокого IQ, врождённой любознательности и особого характера они не способны выполнять скучные, рядовые задания. Только интересные или важные. И только по своей воле, не по указанию сверху.

Следующий герой — более публичный и известный персонаж, про него даже есть статья в Википедии. Гений реверс-инжиниринга Джей Фриман известен под ником saurik, а славу ему принёс каталог «запрещённых» приложений Cydia (для взломанных айфонов).
Читать дальше →

ExKeyMo — кастомизируем раскладку внешней клавиатуры на Android без root

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

В статье Кастомизируем раскладку внешней клавиатуры на Android без root мы выяснили, что Android-приложение может предоставлять дополнительные раскладки клавиатуры, и научились собирать такое приложение. Но простому (и даже не простому) пользователю лень собирать приложение. Хочется, чтобы это происходило автоматически, и в этом нам поможет ExKeyMo.

Читать далее

Почему исключения в Kotlin Coroutines это сложно и как с этим жить?

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

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

Читать далее

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

Приглашаем на мобильный митап от команды СберМаркет Tech

Время на прочтение2 мин
Охват и читатели773

Привет! На связи tech-команда СберМаркета. Приглашаем iOS и Android-разработчиков на наш первый офлайн-митап. Он пройдёт 29 сентября в 19:00 в офисе СберМаркета в Москве с пиццей и новыми знакомствами.

Это встречу мы организуем вместе с сообществом Coffee&Code, так что кроме докладов в программе будет сюрприз от ребят. Спойлер: это игра :)

Если у вас не получается прийти на митап в офлайне, присоединяйтесь к онлайн-трансляции.

В программе:

? Александр Соломатов, руководитель группы iOS-разработки в CберМаркете, расскажет про горизонтальную карусель для баннеров.

? Евгений Прокопьев, Android-разработчик в CберМаркете, покажет как работать с анимациями в React Native.

? Валерий Скворцов, iOS-разработчик в СберМаркете, поделится результатами экспериментов с механизмом избегания клавиатуры в SwiftUI.

? Александр Сычев, руководитель мобильной разработки СберЗдоровья, расскажет, как получить максимум от координаторов при решении задач навигации.

Регистрируйся бесплатно по ссылке.

Ждём тебя на митапе!

Читать далее

Новые возможности AndroidX Media и ExoPlayer

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

Создание приложений с функциями воспроизведения мультимедиа связана с рядом трудностей, которые усложняют разработку. Однако в этом году появилась возможность использовать Jetpack Media3 — решение, которое полностью меняет процесс взаимодействия с мультимедиа. Об этой библиотеке и ее возможностях расскажет Android-разработчик CleverPumpkin Сергей Смирнов.

Читать далее

Дайджест интересных материалов для мобильного разработчика #457 (12 — 18 сентября)

Время на прочтение4 мин
Охват и читатели2.3K
В нашем новом дайджесте открытие Live Activity и ActivityKit, анализ Android-приложений и Flutter 3.3, логи, скука, мобильный CI, приключения BeReal и многое другое!

Подключайтесь также к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.

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

Ликбез по диплинкам. Часть 1: Что такое диплинк?

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

Я рад приветствовать вас в первой части серии интенсива по диплинкам (deep links или глубинным ссылкам). Для начала, чтобы сформировать некоторый контекст, мы поговорим о том, что такое ссылка, затем мы рассмотрим все типы диплинков, и, в конце, мы обсудим некоторые моменты, связанные с безопасностью. Ну что ж, давайте приступим!

Читать далее

Размер имеет значение! Часть 1

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

Как бы мы себя не обманывали - Размер имеет значение! И конечно, мы будем говорить о размере нашего андроид приложения, куда мы добавляем кучу классных features, и даже не задумываемся как это может негативно повлиять на размер приложения. Поэтому мы научимся обнаруживать регрессию размера нашего приложения на CI для автоматизации этого процесса. В данной части, обсудим как можно легко проверять размер в development ветке.

Читать далее

Ionic get started: что важно знать до начала разработки первого приложения

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

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

Читать далее

Готовим Window Inset под соусом Jetpack Compose и щепоткой View

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

Привет! Меня зовут Тимур, я занимаюсь Android-разработкой в KTS.

Почему ещё не все используют режим edge2edge? Разве для того я покупал огромный безрамочный телефон, чтобы смотреть на траурные черные полоски с кнопками?!

К сожалению, сейчас все еще встречаются Android-приложения, которые не поддерживают edge-to-edge. Складывается ощущение, что разработчики либо не знают об insets, либо просто не умеют их готовить. На самом деле реализовать edge-to-edge не сложно, а благодаря этой статье вы сможете разобраться с insets в разы быстрее.

Сегодня я надену специальный мобильный фартук и расскажу, что такое режим edge-to-edge в мобильных приложениях и как работать с insets в Android. А ещё мы разберём примеры обработки insets не только во view, но и в compose. Если статьи о работе с insets в view еще можно найти на просторах интернета, то информацию про работу с ними в compose можно найти только в официальной документации.

Читать далее