Installation
Installation
Sección titulada «Installation»Este repositorio expone dos caminos de consumo principales:
- Android vía Maven Central con
com.deepdots.sdk:shared-android - iOS vía Swift Package Manager con el manifiesto de paquete binario
DeepdotsSDK
Requisitos
Sección titulada «Requisitos»- Las apps Android compilan contra Java 17 en este repositorio
- Las apps de ejemplo Android usan
minSdk = 24 - La distribución iOS apunta a iOS 13+
- El namespace del módulo del SDK compartido es
com.deepdots.sdk
Android
Sección titulada «Android»Añade la dependencia publicada:
dependencies { implementation("com.deepdots.sdk:shared-android:0.7.0")}La app de ejemplo de Android de este repositorio usa exactamente esa coordenada.
Comandos de ejemplo en Android
Sección titulada «Comandos de ejemplo en Android»./gradlew :example-android:assembleDebug./gradlew :example-android:installDebugEl SDK se distribuye como paquete Swift binario desde MagicFeedback/DeepdotsSDK-SPM. Expone el producto de librería DeepdotsSDK.
En Xcode, ve a File → Add Package Dependencies…, introduce la URL del repositorio y elige la versión 0.7.0 con la regla Up to Next Minor Version:
https://github.com/MagicFeedback/DeepdotsSDK-SPMO, en un Package.swift:
dependencies: [ .package(url: "https://github.com/MagicFeedback/DeepdotsSDK-SPM", .upToNextMinor(from: "0.7.0"))],targets: [ .target(name: "YourApp", dependencies: [ .product(name: "DeepdotsSDK", package: "DeepdotsSDK-SPM") ])]El manifiesto del paquete es binario:
import PackageDescription
let package = Package( name: "DeepdotsSDK", platforms: [ .iOS(.v13) ], products: [ .library(name: "DeepdotsSDK", targets: ["DeepdotsSDK"]) ])Clave obligatoria del Info.plist
Sección titulada «Clave obligatoria del Info.plist»Añade esta clave al Info.plist de tu app. El popup se pinta con Compose Multiplatform, que la necesita en iOS; sin ella la app puede cerrarse en dispositivos ProMotion (120 Hz) al mostrar un popup:
<key>CADisableMinimumFrameDurationOnPhone</key><true/>Flujo del ejemplo iOS en este repositorio
Sección titulada «Flujo del ejemplo iOS en este repositorio»El proyecto demo de iOS resuelve un paquete local desde spm-local/. Si falta el XCFramework local, regenéralo primero:
./run_ios_example.shPara resolver y compilar desde las herramientas de Xcode:
cd iosAppxcodebuild -resolvePackageDependencies -project iosApp.xcodeproj -scheme iosApp -destination 'generic/platform=iOS Simulator'xcodebuild -scheme iosApp -project iosApp.xcodeproj -destination 'platform=iOS Simulator,name=iPhone 16e' buildDetalles de empaquetado públicos frente a internos
Sección titulada «Detalles de empaquetado públicos frente a internos»- Detalle público de consumo: la coordenada de dependencia de Android y los nombres del paquete/producto SPM de iOS
- Detalle de mantenimiento: los scripts de release en
scripts/prepare_sdk_release.sh,scripts/prepare_spm_release.shyscripts/prepare_maven_upload_zip.sh
Esos scripts de mantenimiento forman parte del repositorio, pero están orientados al tooling de release, no a los pasos de integración del usuario final.