Spec-Zone.ru › Kotlin 1.6

Библиотеки платформы

Для предоставления доступа к службам родной операционной системы пользователя, дистрибутив Kotlin/Native включает набор предварительно скомпилированных библиотек, специфичных для каждого целевого устройства. Мы называем их Библиотеками платформы.

Связывания POSIX

Для всех целевых устройств на базе Unix или Windows (включая Android и iOS) мы предоставляем платформенную библиотеку POSIX. Она содержит связывания с реализацией платформы стандарта POSIX.

Для использования библиотеки, просто импортируйте её:

import platform.posix.*

Единственным целевым устройством, для которого она недоступна, является WebAssembly.

Обратите внимание, что содержание platform.posix НЕ идентично на разных платформах, так же как и различные реализации POSIX немного отличаются.

Популярные родные библиотеки

Существует много других библиотек платформы, доступных для целевых устройств и кросс-компиляции. Дистрибутив Kotlin/Native предоставляет доступ к OpenGL, zlib и другим популярным родным библиотекам на поддерживаемых платформах.

На платформах Apple предоставляется библиотека objc, обеспечивающая взаимодействие с Objective-C.

Подробности можно найти в содержимом dist/klib/platform/$target дистрибутива.

Доступность по умолчанию

Пакеты из библиотек платформы доступны по умолчанию. Для их использования не нужно указывать специальные флаги линковки. Компилятор Kotlin/Native автоматически определяет, какие библиотеки платформы были использованы и автоматически связывает необходимые библиотеки.

С другой стороны, библиотеки платформы в дистрибутиве — это всего лишь оболочки и связывания с родными библиотеками. Это означает, что сами родные библиотеки (.so, .a, .dylib, .dll и т. д.) должны быть установлены на машине.

Примеры

Репозиторий Kotlin/Native содержит широкий спектр примеров, демонстрирующих использование библиотек платформы. Подробности можно найти в примерах.

Последнее изменение: 07 апреля 2022
Библиотеки Kotlin/Native Kotlin/Native как динамическая библиотека – учебник

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

Spec-Zone.ru

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