Нативный искусственный интеллект в мобильных приложениях с помощью ExecuTorch
ExecuTorch - это новый фреймворк на основе PyTorch, который позволяет экспортировать модели искусственного интеллекта PyTorch в форматы, подходящие для локального развертывания на таких устройствах, как мобильные телефоны или микроконтроллеры. Это означает, что с помощью небольшого количества нативного кода вы можете легко внедрить функции ИИ в свои приложения. В случае с #ios мы можем воспользоваться бэкендом CoreML, который обеспечивает высокую производительность благодаря фреймворку Apple. В этой серии уроков мы покажем вам, как использовать выбранные вами модели искусственного интеллекта прямо в вашем приложении, без необходимости обращения к API.
Статья: https://blog.swmansion.com/bringing-native-ai-to-your-mobile-apps-with-executorch-part-i-ios-f1562a4556e8
Платформа: iOS
ExecuTorch - это новый фреймворк на основе PyTorch, который позволяет экспортировать модели искусственного интеллекта PyTorch в форматы, подходящие для локального развертывания на таких устройствах, как мобильные телефоны или микроконтроллеры. Это означает, что с помощью небольшого количества нативного кода вы можете легко внедрить функции ИИ в свои приложения. В случае с #ios мы можем воспользоваться бэкендом CoreML, который обеспечивает высокую производительность благодаря фреймворку Apple. В этой серии уроков мы покажем вам, как использовать выбранные вами модели искусственного интеллекта прямо в вашем приложении, без необходимости обращения к API.
Статья: https://blog.swmansion.com/bringing-native-ai-to-your-mobile-apps-with-executorch-part-i-ios-f1562a4556e8
Платформа: iOS
Введение в Swift Testing
На WWDC 2024 одним из самых интересных инструментов был Swift Testing, который делает тестирование Swift-кода более мощным, чем когда-либо. С его помощью разработчики могут уверенно создавать высококачественные продукты с минимальным количеством кода.
Статья: https://apptractor.ru/info/articles/swift-testing-2.html
Платформа: iOS
На WWDC 2024 одним из самых интересных инструментов был Swift Testing, который делает тестирование Swift-кода более мощным, чем когда-либо. С его помощью разработчики могут уверенно создавать высококачественные продукты с минимальным количеством кода.
Статья: https://apptractor.ru/info/articles/swift-testing-2.html
Платформа: iOS
Сопоставление данных в Kotlin с объяснениями
В каждом проекте наступает момент, когда вам нужно отмепить данные из одного класса в другой. Особенно при работе в чистой архитектуре с отдельными моделями для слоев
Статья: https://medium.com/@michalankiersztajn/data-mapping-in-kotlin-explained-94238b914dac
Платформа: Android
В каждом проекте наступает момент, когда вам нужно отмепить данные из одного класса в другой. Особенно при работе в чистой архитектуре с отдельными моделями для слоев
app и data. Давайте рассмотрим несколько способов отображения моделей в Kotlin и их отличия.Статья: https://medium.com/@michalankiersztajn/data-mapping-in-kotlin-explained-94238b914dac
Платформа: Android
👎1
Kaml добавляет поддержку YAML в kotlinx.serialization. В настоящее время полностью поддерживается только Kotlin/JVM. Поддерживает большинство основных функций YAML - cкаляры, включая строки, булевы числа, целые числа и плавающие символы, последовательности (списки), карты, нули, псевдонимы и якоря, включая объединение псевдонимов в одну карту. Библиотека поддерживает парсинг YAML в объекты Kotlin (десериализацию) и запись объектов Kotlin в YAML (сериализацию), полиморфизм kotlinx.serialization для sealed и не sealed типов.
Kaml на GitHub: https://github.com/charleskorn/kaml
Платформа: Android
⭐️: 486
Kaml на GitHub: https://github.com/charleskorn/kaml
Платформа: Android
⭐️: 486
Как я исследовал приложение Zomato, чтобы создать свою собственную систему уведомлений
Хотя в приложении есть отличный экран отслеживания заказов, ему не хватает целостности и легкости доступа, которые предлагает iOS-вариант приложения Zomato благодаря использованию в iOS Live Activity. Вдохновившись этим, я решил взять дело в свои руки и провести реверс-инжиниринг приложения Zomato для Android, чтобы создать собственное решение для отслеживания заказов. В этой публикации я расскажу о том, как нашел необходимые конечные точки API, разработал системную архитектуру приложения и реализовал уведомление, которое предоставляет информацию о заказе практически в режиме реального времени. И все это без необходимости постоянно открывать приложение Zomato.
Статья: https://apptractor.ru/info/articles/zomato-reverse.html
Платформа: Android
Хотя в приложении есть отличный экран отслеживания заказов, ему не хватает целостности и легкости доступа, которые предлагает iOS-вариант приложения Zomato благодаря использованию в iOS Live Activity. Вдохновившись этим, я решил взять дело в свои руки и провести реверс-инжиниринг приложения Zomato для Android, чтобы создать собственное решение для отслеживания заказов. В этой публикации я расскажу о том, как нашел необходимые конечные точки API, разработал системную архитектуру приложения и реализовал уведомление, которое предоставляет информацию о заказе практически в режиме реального времени. И все это без необходимости постоянно открывать приложение Zomato.
Статья: https://apptractor.ru/info/articles/zomato-reverse.html
Платформа: Android
TPPDF - это быстрый конструктор PDF для iOS и macOS, использующий простые команды для создания продвинутых документов.
Пример:
TPPDF на GitHub: https://github.com/techprimate/TPPDF
Платформа: iOS
⭐️: 699
Пример:
let document = PDFDocument(format: .a4)
document.add(.contentCenter, text: "Create PDF documents easily.")
let generator = PDFGenerator(document: document)
let url = try generator.generateURL(filename: "Example.pdf")
TPPDF на GitHub: https://github.com/techprimate/TPPDF
Платформа: iOS
⭐️: 699
Видео и подкасты за неделю @AppFiles
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Посоветуйте в комментариях интересные каналы по мобильной или не очень разработке?
#ios #android #mobile #video
•
(iOS Ru) iOS-приложения под защитой Apple! Или нет?•
(iOS En) Explore Swift performance•
(iOS En) Xcode 16 Navigation Shortcuts in 12 Minutes•
(iOS En) SwiftUI Scroll To Hide Header View - iOS 18•
(iOS En) Dark mode icons in iOS 18 and Xcode 16•
(iOS En) Mesh Gradient & Floating Tab bar (iPadOS)•
(iOS En) iOS 18 Control Center Widget - SwiftUI•
(iOS En) Image Carousel in SwiftUI•
(And Ru) Как избавиться от рекурсии, или Как мой код попал в Google•
(And Ru) Микширование аудиопотоков в Android•
(And Ru) Опыт внедрения Kotlin и Compose Multiplatform в продакшн-решение•
(And Ru) Как мы победили техдолг в проекте Android RuStore•
(And En) AI development assistance - Android Developers Backstage•
(And En) Simplifying Kotlin Build Configuration with Amper•
(And En) Why we can't have nice things in Kotlin•
(And En) Kotlin Language Features in 2.0 and Beyond•
(And En) Mastering WebRTC for Large Conference Calls on Android•
(And En) Записи докладов KotlinConf'24•
(Crs En) What Is Kotlin Multiplatform And How Does It Work?•
(Crs En) Building Your First Compose Multiplatform Hello World App•
(Crs En) 10 Takeaways for React Native Devs from the App.js conference•
(Dev Ru) Как решать задачи на Leetcode•
(Dev Ru) ИИ в работе: как упростить жизнь мобильного разработчика•
(Dev Ru) Дали менторить джуна… Все пропало?•
(Dev Ru) Как устроен сетевой код в играхПосоветуйте в комментариях интересные каналы по мобильной или не очень разработке?
#ios #android #mobile #video
❤1
iCore - это библиотека, предназначенная для упрощения разработки приложений для Android. Она предоставляет комплексную и стандартизированную структуру для приложений, использующих архитектуру MVVM. iCore предлагает коллекцию базовых классов, функций расширения и полезных классов, которые помогают разработчикам создавать эффективный и удобный код.
• Сокращение дублирования кода: Абстрагируя часто используемые операции, она предотвращает написание повторяющегося кода.
• Быстрый старт: Наличие готовых к использованию базовых компонентов позволяет быстро приступить к реализации проектов.
• Простая интеграция: Легко интегрирует такие распространенные операции, как Retrofit, наблюдение LiveData и выбор темы/языка.
• Реактивное управление данными с помощью Kotlin Flow и LiveData: iCore управляет асинхронными потоками данных с помощью Kotlin Flow и обрабатывает обновления пользовательского интерфейса с помощью LiveData, предлагая более реактивную и современную модель обработки данных.
• Широкие возможности расширения: Расширяемая структура позволяет настраивать систему в соответствии с потребностями приложения.
• Централизованное управление: Обеспечивает централизованное управление, предоставляя легкий доступ к ресурсам приложения с помощью ResourceProvider.
iCore на GitHub: https://github.com/issever22/iCore
Платформа: Android
⭐️: 11
• Сокращение дублирования кода: Абстрагируя часто используемые операции, она предотвращает написание повторяющегося кода.
• Быстрый старт: Наличие готовых к использованию базовых компонентов позволяет быстро приступить к реализации проектов.
• Простая интеграция: Легко интегрирует такие распространенные операции, как Retrofit, наблюдение LiveData и выбор темы/языка.
• Реактивное управление данными с помощью Kotlin Flow и LiveData: iCore управляет асинхронными потоками данных с помощью Kotlin Flow и обрабатывает обновления пользовательского интерфейса с помощью LiveData, предлагая более реактивную и современную модель обработки данных.
• Широкие возможности расширения: Расширяемая структура позволяет настраивать систему в соответствии с потребностями приложения.
• Централизованное управление: Обеспечивает централизованное управление, предоставляя легкий доступ к ресурсам приложения с помощью ResourceProvider.
iCore на GitHub: https://github.com/issever22/iCore
Платформа: Android
⭐️: 11
WebView: быстрый релиз, никаких ревью в сторах, а минусы есть?
Сегодня расскажу, как мы выбирали архитектуру, чтобы быстро релизить, несмотря ни на что. Вы узнаете, как красиво интегрировать разные legacy-бэкенды без толпы разработчиков на проекте, и как продолжать доставлять важный функционал до пользователей, даже если вас удаляют из сторов.
Статья: https://habr.com/ru/companies/alfa/articles/821055/
Платформа: разработка
Сегодня расскажу, как мы выбирали архитектуру, чтобы быстро релизить, несмотря ни на что. Вы узнаете, как красиво интегрировать разные legacy-бэкенды без толпы разработчиков на проекте, и как продолжать доставлять важный функционал до пользователей, даже если вас удаляют из сторов.
Статья: https://habr.com/ru/companies/alfa/articles/821055/
Платформа: разработка
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Hero анимация в SwiftUI с помощью NavigationTransition
В этой статье вы узнаете, как реализовать Hero анимацию, похожую на анимацию в представлении «Сегодня» в App Store. Для достижения такого внешнего вида и ощущения требуется не три строки кода, поэтому мы также рассмотрим возможность превращения этого компонента в многократно используемый компонент SwiftUI.
Статья: https://apptractor.ru/info/articles/hero-animatsiya-v-swiftui-s-pomoschyu-navigationtransition.html
Платформа: iOS
В этой статье вы узнаете, как реализовать Hero анимацию, похожую на анимацию в представлении «Сегодня» в App Store. Для достижения такого внешнего вида и ощущения требуется не три строки кода, поэтому мы также рассмотрим возможность превращения этого компонента в многократно используемый компонент SwiftUI.
Статья: https://apptractor.ru/info/articles/hero-animatsiya-v-swiftui-s-pomoschyu-navigationtransition.html
Платформа: iOS
👨💻3
InjectionIII - "горячая перезагрузка" для Swift, позволяет обновлять реализацию функций и любых методов классов, структур или перечислений мгновенно в симуляторе iOS без необходимости полной пересборки или перезапуска приложения. Это экономит разработчику значительное количество времени на доработку кода или итерации над дизайном. По сути, это превращает Xcode из «редактора исходного кода» в «редактор программы», где изменения исходного кода не просто сохраняются на диск, а непосредственно отображаются в вашей работающей программе.
InjectionIII на GitHub: https://github.com/johnno1962/InjectionIII
Платформа: iOS
⭐️: 3.9K
InjectionIII на GitHub: https://github.com/johnno1962/InjectionIII
Платформа: iOS
⭐️: 3.9K
Как мы искали применение App Clip… и нашли?
Меня зовут Кирилл. Моя команда в Додо отвечает за развитие на международных рынках. Мы часто заигрываем с новыми технологиями и делаем прикольные фичи, такие как Live Activities и AI-пицца.
Недавно у нас дошли руки до App Clips. Мы решили разобраться, могут ли они быть нам полезны, сделали своё мини-приложение и запустили его на проде.
В этой статье я расскажу, как мы придумывали фичу и с какими проблемами столкнулись при разработке, и поделюсь аналитикой после запуска.
Статья: https://habr.com/ru/companies/dododev/articles/821009/
Платформа: iOS
Меня зовут Кирилл. Моя команда в Додо отвечает за развитие на международных рынках. Мы часто заигрываем с новыми технологиями и делаем прикольные фичи, такие как Live Activities и AI-пицца.
Недавно у нас дошли руки до App Clips. Мы решили разобраться, могут ли они быть нам полезны, сделали своё мини-приложение и запустили его на проде.
В этой статье я расскажу, как мы придумывали фичу и с какими проблемами столкнулись при разработке, и поделюсь аналитикой после запуска.
Статья: https://habr.com/ru/companies/dododev/articles/821009/
Платформа: iOS
Подробное руководство по Logcat в Android Studio с примерами
Logcat в Android Studio имеет множества функций, которые ускоряют отладку, тестирование и в целом поиск нужной информации в логах. Однако, большинство в лучшем случае использует только поиск по ключевому слову и даже не подозревают как сильно могут ускорить свою работу.
Статья: https://habr.com/ru/articles/818751/
Платформа: Android
Logcat в Android Studio имеет множества функций, которые ускоряют отладку, тестирование и в целом поиск нужной информации в логах. Однако, большинство в лучшем случае использует только поиск по ключевому слову и даже не подозревают как сильно могут ускорить свою работу.
Статья: https://habr.com/ru/articles/818751/
Платформа: Android
👍1
Топ-10 вопросов о корутинах 2024
Корутины - это мощная функция, появившаяся в Kotlin для облегчения асинхронного программирования. В отличие от традиционных моделей потоков, корутины легковесны и не обязательно соответствуют потокам на уровне ОС, что делает их более эффективными для параллельного программирования.
1. Что такое корутины в Kotlin?
2. Как определить корутину в Kotlin?
3. Как запустить корутину в Kotlin?
4. Как обрабатывать асинхронные операции с помощью корутин?
5. В чем разница между launch и async в корутинах Kotlin?
6. Как обрабатывать исключения в корутинах Kotlin?
7. Что такое контекст корутины (context) и диспетчер (dispatcher) в Kotlin?
8. Как отменить корутину в Kotlin?
9. Как обрабатывать структурированный параллелизм в Kotlin?
10. Как использовать корутины в Android?
Статья: https://apptractor.ru/info/articles/top-10-voprosov-o-korutinah-2024.html
Платформа: Android
Корутины - это мощная функция, появившаяся в Kotlin для облегчения асинхронного программирования. В отличие от традиционных моделей потоков, корутины легковесны и не обязательно соответствуют потокам на уровне ОС, что делает их более эффективными для параллельного программирования.
1. Что такое корутины в Kotlin?
2. Как определить корутину в Kotlin?
3. Как запустить корутину в Kotlin?
4. Как обрабатывать асинхронные операции с помощью корутин?
5. В чем разница между launch и async в корутинах Kotlin?
6. Как обрабатывать исключения в корутинах Kotlin?
7. Что такое контекст корутины (context) и диспетчер (dispatcher) в Kotlin?
8. Как отменить корутину в Kotlin?
9. Как обрабатывать структурированный параллелизм в Kotlin?
10. Как использовать корутины в Android?
Статья: https://apptractor.ru/info/articles/top-10-voprosov-o-korutinah-2024.html
Платформа: Android
Scroll Block - это открытое приложение, которое поможет вам прекратить бесконечно прокручивать социальные сети и взять под контроль свои привычки, повысить продуктивность. Оно также предоставляет аналитику, чтобы помочь вам понять, как вы используете смартфон. Сделано на 100.0% Kotlin, MVVM и Jetpack Compose.
Scroll Block на GitHub: https://github.com/vishal2376/scroll-block
Платформа: Android
⭐️: 62
Scroll Block на GitHub: https://github.com/vishal2376/scroll-block
Платформа: Android
⭐️: 62
Инструменты Android-разработчика
Меня зовут Симонова Анастасия и я Android‑разработчик в команде мобильного приложения Домклик. Разработка мобильных приложений для Android — это увлекательный, но зачастую трудоёмкий процесс. Успех вашего проекта во многом зависит от эффективности используемых инструментов и рабочих процессов. Как разработчик, я знаю, насколько важно иметь под рукой правильный набор инструментов, которые помогают повышать продуктивность, улучшать качество кода и ускорять процесс разработки.
Хочу поделиться своим опытом и рассказать о наиболее полезных инструментах, которые я использую в своей повседневной работе. Мы рассмотрим как широко известные, так и менее популярные, но не менее ценные утилиты, которые помогут вам стать более эффективным Android‑разработчиком.
Статья: https://habr.com/ru/companies/domclick/articles/821837/
Платформа: Android
Меня зовут Симонова Анастасия и я Android‑разработчик в команде мобильного приложения Домклик. Разработка мобильных приложений для Android — это увлекательный, но зачастую трудоёмкий процесс. Успех вашего проекта во многом зависит от эффективности используемых инструментов и рабочих процессов. Как разработчик, я знаю, насколько важно иметь под рукой правильный набор инструментов, которые помогают повышать продуктивность, улучшать качество кода и ускорять процесс разработки.
Хочу поделиться своим опытом и рассказать о наиболее полезных инструментах, которые я использую в своей повседневной работе. Мы рассмотрим как широко известные, так и менее популярные, но не менее ценные утилиты, которые помогут вам стать более эффективным Android‑разработчиком.
Статья: https://habr.com/ru/companies/domclick/articles/821837/
Платформа: Android
Использование TextRenderer для создания выделенного текста
TextRenderer — это новый протокол, представленный на WWDC 2024, который позволяет нам улучшить отображение текста в SwiftUI. В этой небольшой заметке я хочу показать, как создать представление, позволяющее выделять определенные части заданной строки. Раньше для этого в основном использовалась NSAttributedString, но с TextRenderer появилась возможность делать то же самое в чистом SwiftUI.
Статья: https://apptractor.ru/info/articles/ispolzovanie-textrenderer-dlya-sozdaniya-vydelennogo-teksta.html
Платформа: iOS
TextRenderer — это новый протокол, представленный на WWDC 2024, который позволяет нам улучшить отображение текста в SwiftUI. В этой небольшой заметке я хочу показать, как создать представление, позволяющее выделять определенные части заданной строки. Раньше для этого в основном использовалась NSAttributedString, но с TextRenderer появилась возможность делать то же самое в чистом SwiftUI.
Статья: https://apptractor.ru/info/articles/ispolzovanie-textrenderer-dlya-sozdaniya-vydelennogo-teksta.html
Платформа: iOS
PeopleInSpace - проект Kotlin Multiplatform с SwiftUI, Jetpack Compose, Compose для Wear OS, Compose для декстопов, Compose для Web и клиентами Kotlin/JS + React вместе с бэкендом на Ktor. В настоящее время работает на следующих платформах:
• Android (Jetpack Compose)
• Android App Widget (Compose based Glance API)
• Wear OS (Compose для Wear OS)
• iOS (SwiftUI)
• Виджет приложений для iOS (SwiftUI)
• watchOS (SwiftUI)
• macOS (SwiftUI)
• Swift Executable Package
• Десктоп (Compose for Desktop)
• Web (Compose for Web на основе Wasm)
• JVM (небольшой сервис Ktor + Main.kt в общем модуле)
Он использует Open Notify PeopleInSpace API, чтобы показать список людей, находящихся в космосе, а также положение Международной космической станции.
PeopleInSpace на GitHub: https://github.com/joreilly/PeopleInSpace
Платформа: Kotlin Multiplatform/кроссплатформа
⭐️: 2.8K
• Android (Jetpack Compose)
• Android App Widget (Compose based Glance API)
• Wear OS (Compose для Wear OS)
• iOS (SwiftUI)
• Виджет приложений для iOS (SwiftUI)
• watchOS (SwiftUI)
• macOS (SwiftUI)
• Swift Executable Package
• Десктоп (Compose for Desktop)
• Web (Compose for Web на основе Wasm)
• JVM (небольшой сервис Ktor + Main.kt в общем модуле)
Он использует Open Notify PeopleInSpace API, чтобы показать список людей, находящихся в космосе, а также положение Международной космической станции.
PeopleInSpace на GitHub: https://github.com/joreilly/PeopleInSpace
Платформа: Kotlin Multiplatform/кроссплатформа
⭐️: 2.8K
Как мы победили техдолг в RuStore
За последние два года наш проект достиг впечатляющих результатов: более 50 миллионов установок, около 40 тысяч приложений и более 10 тысяч разработчиков.
Однако быстрый рост не проходит без вызовов, включая такие проблемы, как технический долг. В этой статье я расскажу, как управлять техдолгом, не останавливая разработку новых фич.
Статья: https://habr.com/ru/companies/vk/articles/824346/
Платформа: Android
За последние два года наш проект достиг впечатляющих результатов: более 50 миллионов установок, около 40 тысяч приложений и более 10 тысяч разработчиков.
Однако быстрый рост не проходит без вызовов, включая такие проблемы, как технический долг. В этой статье я расскажу, как управлять техдолгом, не останавливая разработку новых фич.
Статья: https://habr.com/ru/companies/vk/articles/824346/
Платформа: Android
🤡2
Как я участвовал в iOS Widget Challenge и что из этого вышло
Я думаю, что это прикольная идея — дизайнить что-то каждый день, так как это позволяет оставаться в тонусе, а продуктовому дизайнеру, как мне кажется, это нужно.
Статья: https://habr.com/ru/articles/824872/
Платформа: дизайн и прототипирование
Я думаю, что это прикольная идея — дизайнить что-то каждый день, так как это позволяет оставаться в тонусе, а продуктовому дизайнеру, как мне кажется, это нужно.
Статья: https://habr.com/ru/articles/824872/
Платформа: дизайн и прототипирование