Мобильная разработка #1 – Telegram
Мобильная разработка #1
3.98K subscribers
796 photos
85 videos
32 files
1.26K links
Всё о создании приложений под Android и iOS в одном месте.

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

Реклама @evgenycarter
Download Telegram
Как мы на 20% повысили скорость запуска приложения с помощью Baseline Profiles

На конференции Google I/O 2022 показали инструмент Baseline Profiles, с помощью которого можно ускорить запуск приложений после установки.

Мы попробовали его у себя в Дринките и получили прирост до 20% при холодном запуске приложения!

В этой статье расскажу, как внедрить инструмент, оценить его работу на production приложении, немного погружу в историю компиляторов в целом и рассмотрю более продвинутые сценарии для генерации Profile.

Демонстрировать это я буду на нашем приложении Дринкит. Поехали!

https://habr.com/ru/companies/dododev/articles/739064/


#Android

👉 @developer_mobila
👍2
Нельзя просто взять и сделать нормальную адресную систему в приложении

Олды помнят, как ещё каких-то 10-15 лет назад заказывали пиццу по телефону, диктуя адрес операторам кол-центра. Мало кто тогда думал, что отсутствие подсказок адресов и карты на сайте с определением геолокации, а уж тем более в мобильном приложении, будет вызывать у нас реакцию «да сложно, что ли, нормальную карту сделать?».

Но вот мы здесь, рассказываем, как в Додо Пицце лишь недавно появилась уже привычная многим адресная система. Как так вышло — история долгая и не всем интересная. Скажу только, что переделывать и менять как-то работающее старое на новое в большой системе — тот ещё квест. В итоге нам пришлось зарыться достаточно глубоко во внутренности Dodo IS, чтобы можно было добавлять адреса с помощью карты. В этой статье расскажу, с чего мы начинали и как реализовали эту фичу в нашем iOS-приложении.

https://habr.com/ru/companies/dododev/articles/737800/

#ios

👉 @developer_mobila
👍2
Современные паттерны навигации в iOS-приложениях

По данным 42Matters, каждый месяц в Apple App Store появляется более 30 000 новых приложений. В условиях жесткой конкуренции требования к новым проектам постоянно растут. Чтобы стать популярным, приложению нужно быть полезным, удобным, интуитивно понятным, логичным и просто красивым. Многие из этих качеств зависят от правильно построенной навигации и применения узнаваемых дизайнерских паттернов.

https://habr.com/ru/companies/cleverpumpkin/articles/738584/

#ios

👉 @developer_mobila
👍3
Лучшие практики уменьшения размера iOS-приложений

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

https://medium.com/@sarankumaresh1/ios-app-size-reduction-best-practice-8a52e6f10140

#ios

👉 @developer_mobila
👍2
Регулярные выражения в Swift

Регулярные выражения позволяют нам выполнять сложные операции поиска и замены в тысячах текстовых файлов всего за несколько секунд, поэтому неудивительно, что они популярны уже более 50 лет. Apple обеспечивает поддержку регулярных выражений на всех своих платформах – iOS, macOS, tvOS и даже watchOS – все они используют один и тот же класс, NSRegularExpression. Это чрезвычайно быстрый и эффективный способ поиска и замены сложного текста десятки тысяч раз, и все это доступно для использования разработчиками Swift.

Rus https://habr.com/ru/articles/740044/

Eng https://www.hackingwithswift.com/articles/108/how-to-use-regular-expressions-in-swift

#ios

👉 @developer_mobila
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Своя библиотека под Android за один вечер

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

Что, если у вас появилась потребность использовать один и тот же код на Jetpack Compose между несколькими проектами, да еще так, чтобы он импортировался одинаково и автоматически на нескольких машинах? Такая ситуация может возникнуть с большой вероятностью, потому что Compose не блещет обилием предоставляемых из коробки виджетов и тулзов (хотя их количество постоянно растет). Быть может, ваш дизайнер пришел к вам с чем-то настолько диковинным, что готовыми компонентами просто не обойтись. Тогда тот пайплайн разработки и публикации собственной библиотеки, который я опишу ниже, может оказаться для вас полезным.

В качестве примера возьмем не самый очевидный элемент интерфейса — кнопку с движущейся синусоидоподобной волной. Отлично подойдет для управления, например, голосовым вводом.

https://habr.com/ru/articles/739332/

#Android

👉 @developer_mobila
👍3
BIGO Ads для монетизации приложений

В мобильной медиации Яндекса теперь доступна крупнейшая рекламная сеть BIGO Ads. Для сервиса она уже 13-я. Среди такого количества рекламных сеток создается конкуренция, за счет которой разработчики могут выбирать наиболее выгодные условия.

У BIGO Ads широкое покрытие – Ближний Восток, Россия, страны Южной и Юго-Восточной Азии, что обеспечивает эффективную монетизацию. А подключить ее можно самостоятельно в мобильной медиации Яндекса или с помощью Простой монетизации, где за настройку отвечают эксперты.

https://yandex.ru/adv/news/partneram-prostoy-monetizatsii-i-mobilnoy-mediatsii-stala-dostupna-monetizatsiya-s-bigo-ads

👉 @developer_mobila
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Практическое руководство по Jetpack Compose: создаем анимированную кнопку-счетчик

Недавно передо мной возникла необходимость создать кнопку счетчика для небольшого приложения. Бороздя просторы интернета в поисках хороших готовых решений, я наткнулся на этот дизайн от Эхсана Рахими (Ehsan Rahimi) на Dribble. Придя к выводу, что воссоздать его в Compose — задача нетривиальная, я закатал рукава и принялся экспериментировать. В этом руководстве я поделюсь с вами каждым шагом, который я предпринял для реализации этого дизайна в Jetpack Compose.

https://medium.com/@domen.lanisnik/creating-an-animated-counter-button-in-jetpack-compose-444d03129510

#Android

👉 @developer_mobila
👍5
Микросмартфон за 100 рублей: Покупаем смартфон 11-летней давности и… пишем под него приложения

Размер экрана — краеугольный камень мира современных смартфонов. Кто-то считает, что дисплеи должны становиться только больше, а рамки — меньше, кто-то любит «средние» дисплеи диагональю в 5+", ну а кто-то остаётся ярым поклонником и приверженцем компактных смартфонов с крошечными дисплейчиками. В наше время, купить новый смартфон с относительно небольшим дисплеем за приемлемые деньги почти нереально — самые бюджетные модели будут слишком тормозными для современного пользователя. Некоторое время назад, я купил себе бюджетный крошечный смартфон 2012 года выпуска — Samsung Galaxy Pocket, причём всего за 100 рублей. Конечно же мне захотелось довести его до ума — а доводить пришлось руками и навыками прожженного программера! Какой смартфон можно получить за 100 рублей? Читаем в статье!

https://habr.com/ru/companies/itglobalcom/articles/759112/

#Android

👉 @developer_mobila
👍4
Обзор актуальных инструментов шифрования в Android

Меня зовут Артур Илькаев, я работаю в департаменте экосистемных продуктов, мы разрабатываем VK ID SDK и все что связано с авторизацией и сессиями, в частности — мультиаккаунт.

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

https://habr.com/ru/companies/vk/articles/776728/

#Android

👉 @developer_mobila
3
🚀 Связные списки в алгоритмических собеседованиях

📌 "Книжного академического образования недостаточно. Книги - это замечательно, но они не помогут вам пройти собеседование. Почему? Подскажу: интервьюверы не видели красно-черных деревье со времен своего обучения в университете. Чтобы успешно пройти собеседование, нужно готовиться на реальных вопросах, встречающихся на собеседованиях" - Лакман Макдауэлл

🗓 2 декабря в 18:00 по МСК пройдет бесплатный урок по подготовке к алгоритмическим собеседования от Senior разработчика из Тинькофф и спикера HighLoad (ex-разработчика Яндекс, Huawei)

На открытом уроке решишь >8 задач, изучишь теорию, которая точно пригодится на собеседовании, и сможешь задать вопросы человеку, который успешно прошел алгоритмические секции в OZON, Tinkoff, VK, СБЕР, Яндекс и Авито

Зарегистрироваться
👍1
Jailbreak checker — как обезопасить свое iOS-приложение

Привет! Меня зовут Тоня, я продуктовый разработчик в продукте QIWI Кошелек. Недавно мы делали задачу по предотвращению рисков в связи с использованием приложения с Jailbreak. Хочу рассказать о трудностях, с которыми столкнулись на пути, и о том, как мы их разрешили.

https://habr.com/ru/companies/qiwi/articles/762600/

#ios

👉 @developer_mobila
👍3👎1👻1
Media is too big
VIEW IN TELEGRAM
Собеседование на Junior Android Dev у Анны Жарковой

Собеседование проходило в формате вопрос-ответ, при необходимости писали пример ответом на вопрос.
Интервьюер: Анна Жаркова, руководитель группы разработки в Usetech

источник

#Android

👉 @developer_mobila
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Как правильно обрабатывать недоступный контент в iOS 17?

В большинстве наших iOS-приложений мы, разработчики iOS, справляемся с недоступным контентом, отсутствием результатов поиска или сценариями, не имеющими подходящих данных. UI/UX-дизайнеры и мы, разработчики, используем различные подходы, чтобы обеспечить бесперебойный пользовательский опыт.

https://santoshbotre01.medium.com/how-to-handle-content-unavailable-gracefully-with-ios-17-5f1954c64be3

#ios

👉 @developer_mobila
👍1😁1