Чат Нейробот
219 subscribers
58 photos
5 videos
101 links
Разработка мобильных приложений (app) под Android, iOS.
Подборки с полезной информацией, книги, статьи.
Download Telegram
Путешествие к центру Композиции

В продолжение разборов внутреннего устройства Compose Runtime Дмитрий рассказывает о Композиции — ключевом механизме фреймворка, без которого Compose и вовсе был бы не Compose.

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

https://www.youtube.com/watch?v=L8mc7ZnO5zY

#Android

👉
Опыт публикации Андроид приложения в Google Play независимым разработчиком в 2024 году

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

#Android

👉
Сергей Балалаев — SwiftUI-навигация: просто, нативно и декларативно

Стартуя проект на SwiftUI 2.0 в конце 2021 года, Сергей с командой избрали тактику минимального использования UIKit, в том числе в вопросах навигации. Кроме того, они не стали создавать собственный NavigationView, а использовали тот механизм, который предоставил Apple – немного обернув его в решение, схожее с концепцией отображения модальных окон.

Изначально навигация была простой: TabBarView+NavigationView, поддержка с iOS 14, и все были счастливы. Затем дизайнеры и бизнес начали усложнять пути переходов экранов, создавая целые графы межэкранных прыжков, и команда столкнулась с техническими препятствиями и багами SwiftUI. Но они не свернули на UIKit, как это сделали те, кто вкусил SwiftUI до поддержки с iOS 16. Есть единицы, которые пошли по пути команды, и у них есть неплохие идеи. Однако их реализацию предстоит «доводить до ума».

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

https://www.youtube.com/watch?v=suqghgwucrs

#ios

👉
Никита Краснов — Удивительный мир внутри .ipa

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

Мы узнали, как можно сравнить два приложения на схожесть, используя Hopper + BinDiff, и как сделать эти бинари отличающимися. Спикер объяснил, почему Apple знает, как зовут вашего юзера на компьютере, когда вы собираете приложение. Также пофантазировал на тему того, как Apple использует статический и динамический анализ .ipa во время ревью приложений для стора.

Доклад будет интересен разработчикам, которые создают White Label-приложения, а также всем, кто хорошо знает Swift, но при этом не знает, как приложение собирается и во что превращается на выходе.

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

https://www.youtube.com/watch?v=C1PqxajPrks

#ios

👉
Никита Краснов — Удивительный мир внутри .ipa

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

Мы узнали, как можно сравнить два приложения на схожесть, используя Hopper + BinDiff, и как сделать эти бинари отличающимися. Спикер объяснил, почему Apple знает, как зовут вашего юзера на компьютере, когда вы собираете приложение. Также пофантазировал на тему того, как Apple использует статический и динамический анализ .ipa во время ревью приложений для стора.

Доклад будет интересен разработчикам, которые создают White Label-приложения, а также всем, кто хорошо знает Swift, но при этом не знает, как приложение собирается и во что превращается на выходе.

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

https://www.youtube.com/watch?v=C1PqxajPrks

#ios

👉
Глубокие ссылки для локальных уведомлений в SwiftUI

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

https://swiftwithmajid.com/2024/04/09/deep-linking-for-local-notifications-in-swiftui/

#ios

👉
Взлом и защита Android-приложений

Рассматриваем способы взлома и защиты. Пытаемся сначала атаковать приложение, а затем тут же защищаемся. А потом атакуем новую защиту, и так по кругу.

Сперва говорим о банальных вещах – таких, как просмотр данных приложения через снифферы трафика или просмотр байт-кода. Далее о более сложном: говорим об изменении поведения приложения через Frida и защите от этого с помощью C++. И в конце пытаемся взломать С++.

https://www.youtube.com/watch?v=jxRvLjAgE-A

#Android

👉
Новостное приложение: с нуля до публикации в Google Play

https://www.youtube.com/playlist?list=PL0SwNXKJbuNmIqMPiBnXkmfugSjWePAmx


#Android

👉
Обновления в адаптивных макетах Compose с I/O

В этом году на Google I/O было сделано множество интересных анонсов, причем не только в области искусственного интеллекта (хотя и это, безусловно, было важным моментом). Для меня ключевым моментом стало внимание к усовершенствованиям в Jetpack Compose для создания адаптивных макетов. Поскольку Android выходит за рамки смартфонов, переходя на планшеты, раскладушки и большие экраны, создание приложений, адаптирующихся к различным форм-факторам, становится как никогда актуальным.

https://proandroiddev.com/adaptive-compose-layouts-86b7f1e51338

#Android

👉
Как я решал задачу получения доступа к данным банковских приложений на iOS

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

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

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

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

#ios

👉
Как встроить распознавание звуков в ваше iOS приложение на Swift с использованием SoundAnalysis

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

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

#ios

👉
Композим иконки. Улучшаем семантику и скорость отрисовки

Привет! Меня зовут Алексей, я работаю Android-разработчиком в Облаке Mail. Наша команда отвечает за возвращаемость пользователей в сервис. Чтобы сделать использование Облака приятным и удобным, мы проводим редизайн приложения, переписывая старый пользовательский интерфейс на Jetpack Compose по новым макетам. Для упрощения создания новых экранов мы разрабатываем UI Kit с готовыми Composable-компонентами.

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

#Android

👉
SwiftUI TextRenderer

В этом видео я хочу познакомить вас с TextRenderer. Это новый модификатор значений и текста, представленный на WWDC24 для Xcode 16, который может заменить стандартное поведение отображения текста и создавать впечатляющие результаты.

Приятный момент заключается в том, что, хотя вам понадобится Xcode 16, TextRenderer совместим с iOS 17, так что не нужно ждать, пока iOS 18 станет популярной.

Table of Contents:
0:00 Introduction
1:06 The Basics
8:54 The Basics2
10:19 TextAttributes
14:15 LineRenderer
19:35 GlyphRenderer
24:07 AnimatedGlyphRenderer

https://www.youtube.com/watch?v=fwKU0Z3ogBE


#ios

👉
SwiftUI Alert Dialogs - iOS 17 & 18

В этом видео я расскажу, как создавать стильные пользовательские диалоги оповещений с помощью SwiftUI | SwiftUI Alert With TextField | SwiftUI Overlay Popups | SwiftUI Custom Alerts | SwiftUI Custom Dialogs | Swift | SwiftUI Xcode 16 | SwiftUI for iOS 18 | Xcode 16 SwiftUI.

https://www.youtube.com/watch?v=Q5aiAtm5rBI

#ios

👉
This media is not supported in your browser
VIEW IN TELEGRAM
Бесплатное IT-образование в 2024

Отобрали для вас полезные телеграм-каналы, которые помогут освоить программирование и другие IT-направления

Выбирайте нужное и подписывайтесь:

👩‍💻 С/С++:
📱 GitHub:
🤓 Книги айти:
👩‍💻 Golang:
👩‍💻 PHP:
👩‍💻 Моб. разработка:
👩‍💻 Java:
👩‍💻 Frontend:
⚙️ Backend:
👩‍💻 Python:
👩‍💻 C#:
🖥 Базы Данных & SQL:
👩‍💻 Разработка игр:
👩‍💻 DevOps:
🖥 Data Science:
🤔 Хакинг & ИБ:
🐞 Тестирование:
📱 Маркетинг:
🖥 Дизайн:

➡️ Сохраняйте себе, чтобы не потерять
App Intents: новые возможности для разработчиков в iOS 18

Привет! Меня зовут Настя Ищенко. Я — iOS-разработчик в KTS.

Эта статья поможет узнать, что такое App Intents и как их использовать для создания сложных сценариев, которые расширят возможности вашего приложения. А еще я расскажу об обновлениях фреймворка App Intents, представленных на WWDC24.

https://habr.com/ru/companies/kts/articles/857078/

#ios

👉
Backport SwiftUI modifiers

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

https://alejandromp.com/development/blog/backport-swiftui-modifiers/


#ios

👉
Темная сторона однонаправленных архитектур Swift

В этой статье речь пойдет о главной проблеме всех однонаправленных архитектур Swift. Собственно говоря, это не проблема однонаправленных архитектур как таковых. Скорее, это проблема моделирования действий или событий как значений. Я ее называю “пинг-понг-проблемой”. Все дело в “скачках” между разными местами кода, которые приходится преодолевать, чтобы получить целостное представление обо всем потоке. Рассмотрим для начала простой пример.

https://medium.com/the-swift-cooperative/the-dark-side-of-unidirectional-architectures-in-swift-e4acf243ff1c

#ios

👉