Spec-Zone.ru › Kotlin 1.6

Примеры

Это отобранный список примеров для Kotlin Multiplatform Mobile.

У вас есть отличный пример, который вы хотели бы добавить в список?
Не стесняйтесь создать pull request и рассказать нам о нём! Вы можете использовать этот пример PR в качестве ссылки.

Название примера

Что общее?

Используемые популярные библиотеки

Фреймворк пользовательского интерфейса

Интеграция iOS

Платформенные API

Тесты

Целевая платформа JS

Функции

Kotlin Multiplatform Mobile Sample

Алгоритмы

-

XML, SwiftUI

Этапы сборки Xcode

✅

-

-

  • expect/actual declarations

KMM RSS Reader

Модели, Работа в сети, Хранение данных, Состояние UI

SQLDelight, Ktor, DateTime, multiplatform-settings, Napier, kotlinx.serialization

Jetpack Compose, SwiftUI

Этапы сборки Xcode

✅

-

-

  • Redux для общего состояния UI

  • Опубликовано в Google Play и App Store

KaMPKit

Модели, Работа в сети, Хранение данных, ViewModels

Koin, SQLDelight, Ktor, DateTime, multiplatform-settings, Kermit

Jetpack Compose, SwiftUI

CocoaPods

-

✅

-

-

moko-template

Модели, Работа в сети, Хранение данных, ViewModels

Moko Libraries, Ktor, multiplatform-settings

-

CocoaPods

-

✅

-

  • Модульная архитектура

  • Общие функции: Управление ресурсами, Доступ к разрешениям во время выполнения, Доступ к мультимедиа, Управление списками UI

  • Генерация сетевого уровня из OpenAPI.

PeopleInSpace

Модели, Работа в сети, Хранение данных

Koin, SQLDelight, Ktor

Jetpack Compose, SwiftUI

CocoaPods, Swift Packages

-

✅

✅

  • Android Wear OS

  • iOS

  • watchOS

  • macOS Desktop (Compose for Desktop)

  • Web (Compose for Web)

  • Web (Kotlin/JS + React Wrapper)

  • JVM

GitFox SDK

Модели, Работа в сети, Интераторы

Ktor

XML, UIKit

Этапы сборки Xcode

-

-

✅

  • Интегрировано в приложение Flutter

D-KMP-sample

Работа в сети, Хранение данных, ViewModels, Навигация

SQLDelight, Ktor, DateTime, multiplatform-settings

Jetpack Compose, SwiftUI

Этапы сборки Xcode

-

✅

✅

  • Реализует шаблон MVI и однонаправленный поток данных

  • Использует StateFlow Kotlin для запуска перекомпоновки UI-слоя

Food2Fork Recipe App

Модели, Работа в сети, Хранение данных, Интераторы

SQLDelight, Ktor, DateTime

Jetpack Compose, SwiftUI

CocoaPods

-

-

-

-

kmm-ktor-sample

Работа в сети

Ktor, kotlinx.serialization, Napier

XML, SwiftUI

Этапы сборки Xcode

-

-

-

  • Видеоурок

Currency Converter Calculator

Модели, Работа в сети, Хранение данных, Алгоритмы, ViewModels

Ktor, SQLDelight, koin, moko-resources, kotlinx.datetime, multiplatform-settings

XML, SwiftUI

CocoaPods

✅

✅

-

  • Логика общая с бэкендом

todoapp

Модели, Работа в сети, Презентация, Навигация и UI

SQLDelight, Decompose, MVIKotlin, Reaktive

Jetpack Compose, SwiftUI

Этапы сборки Xcode

-

✅

✅

  • 99% кода является общим

  • Архитектурный шаблон MVI

  • Общий UI для Android, Desktop и Web через Compose Multiplatform

kmm-arch-demo

Модели, Работа в сети, ViewModels, Состояние UI

Ktor, kotlinx.serialization

XML, SwiftUI

CocoaPods

-

-

-

  • Использует Arch, библиотеку Kotlin Multiplatform Mobile, которая основана на библиотеке Mobius от Spotify, но использует SharedFlow, StateFlow и корутины вместо RxJava

Codeforces WatchR

Модели, Работа в сети, Хранение данных, Состояние UI

SQLDelight, Ktor, kotlinx.serialization

XML, UIKit

CocoaPods

✅

✅

-

  • Использует Redux (ReKamp) для общего состояния UI

  • Опубликовано в Google Play и App Store

CatViewerDemo

Модели, Работа в сети, Хранение данных, ViewModels

Ktor, multiplatform-settings, kotlinx.serialization

Jetpack Compose, SwiftUI

Этапы сборки Xcode

✅

✅

-

  • Архитектура Android

  • Пагинация

  • Работает на M1

  • GitHubActions CI

  • Кошки 🐈

Praxis KMM

Модели, Сети, Хранение данных

kotlinx.serialization, Ktor, Koin, SQLDelight

Jetpack Compose, SwiftUI, ReactJS

CocoaPods, Swift Packages

✅

-

✅

  • iOS

  • Android

  • Android Wear OS

  • watchOS

  • Рабочий стол macOS (SwiftUI)

  • Веб (Kotlin/JS + React Wrapper)

Bookshelf

Модели, Сети, Хранение данных

Realm-Kotlin, Ktor, kotlinx.serialization

Jetpack Compose, SwiftUI

CocoaPods

-

-

-

  • Использует Realm для сохранения данных

kotlin-with-cocoapods-sample

-

-

-

CocoaPods

✅

-

-

-

multitarget-xcode-with-kotlin-cocoapods-sample

-

-

-

CocoaPods

-

-

-

-

mpp-sample-lib

Алгоритмы

-

-

-

✅

-

✅

  • Демонстрирует, как создать многоплатформенную библиотеку (учебник)

Последнее изменение: 07 апреля 2022
Ссылка на справочник Multiplatform Gradle DSL Вопросы и ответы

© 2010–2022 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/multiplatform-mobile-samples.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API