Skip to main content
La biblioteca Swift de Topsort permite a nuestros clientes enviar fácilmente solicitudes de subastas y rastrear eventos dentro de aplicaciones iOS.
Requisitos mínimos: toolchain de Swift 6 (Xcode 16) e iOS 15.

Instalación

Instala usando package.swift:

Configuración

Llama a Topsort.shared.set(opaqueUserId:) después de configurar, siempre que tengas tu propio id para el usuario, con o sin sesión iniciada. Si no lo tienes, el SDK genera un id y lo conserva entre ejecuciones de la aplicación.

Solicitando Subastas

Reportando Eventos

Renders

Un render registra que un anuncio patrocinado fue insertado en la jerarquía de vistas, por separado de la impresión, que registra cuándo se vuelve visible. Repórtalo apenas el anuncio se coloca en la pantalla, antes de la impresión. Los renders son solo para anuncios patrocinados, por lo que resolvedBidId es obligatorio. winner es uno de los ganadores de la respuesta de la subasta (result.results[i].winners).
Topsort.shared envía solo el primer render y la primera impresión de cada resolvedBidId para un usuario y descarta cualquier repetición, por lo que reportar desde onAppear es seguro cuando una vista vuelve a aparecer, por ejemplo al desplazarte por una lista diferida (lazy).

Impresiones

Una impresión registra que un anuncio o producto se volvió visible para el comprador.
Para resultados orgánicos, construye el evento con Event(entity: Entity(type: .product, id: product.id), occurredAt: Date.now).

Clics

Un clic registra que el comprador hizo clic en un anuncio o producto.
Los clics orgánicos usan el mismo inicializador Event(entity:occurredAt:) que las impresiones.

Compras

Una compra registra los productos que adquirió el comprador. Topsort la atribuye a los anuncios con los que el comprador interactuó.

Mostrando Banners

TopsortBanner reporta el render cuando la subasta devuelve un ganador, la impresión cuando la imagen se carga, y el clic cuando se toca. No reportes estos eventos por tu cuenta para los banners que muestra. Para la documentación completa, consulta el repositorio de GitHub.