iOS (Swift)
Paywalls nativas en SwiftUI con adaptadores de StoreKit 2 y RevenueCat. Requiere iOS 16 o superior.
Instalación
En Xcode: File → Add Package Dependencies e ingresa la URL del repositorio. Luego agrega los productos que necesites: Experiwall (siempre) más ExperiwallStoreKit o ExperiwallRevenueCat.
swift
.package(url: "https://github.com/marcelo-earth/experiwall-ios", from: "0.1.0")Configuración
swift
import SwiftUI
import Experiwall
import ExperiwallRevenueCat
@main
struct MyApp: App {
@StateObject var experiwall = ExperiwallSDK(
apiKey: "ew_pub_...",
purchaseHandler: RevenueCatPurchaseHandler()
)
var body: some Scene {
WindowGroup {
ContentView()
.experiwall(experiwall)
.paywallSheet()
.task {
await experiwall.identify(userId: "user_123")
try? await experiwall.loadConfig()
}
}
}
}Muestra un paywall
swift
struct ContentView: View {
@EnvironmentObject var experiwall: ExperiwallSDK
var body: some View {
Button("Upgrade") {
experiwall.present("paywall_abc")
}
}
}Placements
Usa placements para que Experiwall elija automáticamente el paywall correcto y la variante A/B según las reglas de tu campaña.
swift
await experiwall.presentPlacement("onboarding_complete")Targets
El SDK se divide en tres targets de Swift Package para que solo incluyas lo que necesites:
Experiwall: SDK principal, networking yPaywallView. Siempre requerido.ExperiwallStoreKit:StoreKitPurchaseHandlerbasado en StoreKit 2.ExperiwallRevenueCat:RevenueCatPurchaseHandlerbasado en el SDK de RevenueCat.