Skip to content

Installation

This repository exposes two primary consumer paths:

  • Android via Maven Central using com.deepdots.sdk:shared-android
  • iOS via Swift Package Manager using the binary package manifest DeepdotsSDK
  • Android apps compile against Java 17 in this repository
  • Android example apps use minSdk = 24
  • iOS distribution targets iOS 13+
  • The shared SDK module namespace is com.deepdots.sdk

Add the published dependency:

dependencies {
implementation("com.deepdots.sdk:shared-android:0.3.0")
}

The Android example app in this repository uses that exact coordinate.

Terminal window
./gradlew :example-android:assembleDebug
./gradlew :example-android:installDebug

The checked-in SPM manifest is binary-based and currently named DeepdotsSDK. It exposes the library product DeepdotsSDK.

5.7
import PackageDescription
let package = Package(
name: "DeepdotsSDK",
platforms: [
.iOS(.v13)
],
products: [
.library(name: "DeepdotsSDK", targets: ["DeepdotsSDK"])
]
)

The iOS demo project resolves a local package from spm-local/. If the local XCFramework is missing, regenerate it first:

Terminal window
./run_ios_example.sh

To resolve and build from Xcode tooling:

Terminal window
cd iosApp
xcodebuild -resolvePackageDependencies -project iosApp.xcodeproj -scheme iosApp -destination 'generic/platform=iOS Simulator'
xcodebuild -scheme iosApp -project iosApp.xcodeproj -destination 'platform=iOS Simulator,name=iPhone 16e' build
  • Public consumer detail: Android dependency coordinate and iOS SPM package/product names
  • Maintainer detail: release scripts in scripts/prepare_sdk_release.sh, scripts/prepare_spm_release.sh, and scripts/prepare_maven_upload_zip.sh

Those maintainer scripts are part of the repository, but they are release-tooling oriented rather than end-user integration steps.