Xcode Kotlin File Sync

Gradle plugin to sync Kotlin source files with an Xcode project

License

License

Categories

Categories

Kotlin Languages Native Development Tools
GroupId

GroupId

co.touchlab
ArtifactId

ArtifactId

kotlinnativecocoapods
Last Version

Last Version

0.12
Release Date

Release Date

Type

Type

jar
Description

Description

Xcode Kotlin File Sync
Gradle plugin to sync Kotlin source files with an Xcode project
Project URL

Project URL

https://github.com/touchlab/KotlinCocoapods/
Source Code Management

Source Code Management

https://github.com/touchlab/KotlinCocoapods/

Download kotlinnativecocoapods

How to add to project

<!-- https://jarcasting.com/artifacts/co.touchlab/kotlinnativecocoapods/ -->
<dependency>
    <groupId>co.touchlab</groupId>
    <artifactId>kotlinnativecocoapods</artifactId>
    <version>0.12</version>
</dependency>
// https://jarcasting.com/artifacts/co.touchlab/kotlinnativecocoapods/
implementation 'co.touchlab:kotlinnativecocoapods:0.12'
// https://jarcasting.com/artifacts/co.touchlab/kotlinnativecocoapods/
implementation ("co.touchlab:kotlinnativecocoapods:0.12")
'co.touchlab:kotlinnativecocoapods:jar:0.12'
<dependency org="co.touchlab" name="kotlinnativecocoapods" rev="0.12">
  <artifact name="kotlinnativecocoapods" type="jar" />
</dependency>
@Grapes(
@Grab(group='co.touchlab', module='kotlinnativecocoapods', version='0.12')
)
libraryDependencies += "co.touchlab" % "kotlinnativecocoapods" % "0.12"
[co.touchlab/kotlinnativecocoapods "0.12"]

Dependencies

runtime (2)

Group / Artifact Type Version
org.jetbrains.kotlin : kotlin-stdlib-jdk7 jar 1.4.0
org.jetbrains.kotlin : kotlin-native-utils jar 1.4.0

test (2)

Group / Artifact Type Version
junit : junit jar 4.12
com.google.truth : truth jar 0.42

Project Modules

There are no modules declared in this project.

Kotlin Cocoapods Extended

This plugin is a fork of the Kotlin Multiplatform plugin's cocoapods support. Cocoapods support bundled into the KMP Gradle plugin is somewhat limited, and trying to change how that works is difficult because it is bundled with the main plugin and the main Kotlin project itself. This fork has pulled out just the Cocoapods support and changed the namespace so it won't clash.

Features

The main Cocoapods plugin configures the Xcode framework that is built, and does not support all of the configuration options available when you configure the framework manually. This means you'll get a static framework, which can't be debugged, and will prevent being able to add multiple frameworks to a single project. There has also been difficulty configuring dependencies to be included in the generated header.

Not all of this is supported now, but by forking and removing the Cocoapods plugin, it will be much easier to add features as desired.

Usage

See Releases for current version.

Add the following to the buildscript section:

buildscript {
    dependencies {
        classpath 'co.touchlab:kotlinnativecocoapods:0.11'
    }
}

Apply the plugin in the shared code project, and configure the plugin

plugins {
  id("co.touchlab.kotlinxcodesync")
}

kotlin {
    cocoapodsext {
      summary = "Common library for the KaMP starter kit"
      homepage = "https://github.com/touchlab/KaMPStarter"
      isStatic = false
    }
}
co.touchlab

Touchlab

Versions

Version
0.12
0.11
0.10
0.9
0.7
0.6
0.5