Roku (BrightScript)
Enlace al repositorio de
GitHub
Integración del SDK de AppsFlyer con Roku
AppsFlyer permite a los marketers de gaming tomar mejores decisiones al proporcionarles potentes herramientas que resuelven puntos problemáticos reales, incluyendo atribución multiplataforma, análisis móvil y web, enlaces profundos, detección de fraude, gestión y preservación de la privacidad, y más.
La atribución del juego requiere que este se comunique con las API de AppsFlyer a través de HTTPS y reporte las actividades de los usuarios como los primeros inicios, las sesiones consecutivas y los eventos in-app. Por ejemplo, los eventos de compra.
Te recomendamos usar esta aplicación de muestra como referencia para integrar AppsFlyer en tu canal de Roku.
AppsFlyerRokuSDK - Interfaz
AppsFlyerRokuSDK.brs
, incluido en source/appsflyer-integration-files
, contiene el código y la lógica necesarios para conectarse a los servidores de AppsFlyer y reportar eventos.
Init
Este método recibe tu clave de API e ID de aplicación e inicializa el módulo AppsFlyer que envía las solicitudes de primeros inicios y de sesiones a AppsFlyer.
Firma de método
AppsFlyer().init(<< DEV_KEY >>, << APP_ID >>)
Usage:
' Initialize the AppsFlyer integration (send first-open/session event)
AppsFlyer().init(<< DEV_KEY >>, << APP_ID >>)
Arguments:
APP_ID
: encontrado a través de ifAppInfo.DEV_KEY
: puedes obtenerlo del marketer o en AppsFlyer HQ.
NOTE: It is recommended to set the
APP_ID
manually.When retrieving the
APP_ID
conGetID()
roAppInfo, the channel ID is "dev" if the application is sideloaded, and then app will not be able to communicate with the AppsFlyer endpoint.
Start
Este método envía las solicitudes de primeros inicios y sesiones a AppsFlyer.
Firma de método
start()
Usage:
AppsFlyer().start()
Stop
This method stops the SDK from functioning and communicating with AppsFlyer servers. It's used when implementing user opt-in/opt-out.
Firma de método
stop()
Usage:
' Starting the SDK
AppsFlyer().start()
' ...
' Stopping the SDK, preventing further communication with AppsFlyer
AppsFlyer().stop()
LogEvent
Este método recibe un nombre de evento y un objeto json y envía eventos in-app a AppsFlyer.
Firma de método
logEvent: function(eventName as string, eventParameters as object, eventCustomParameters = {})
Usage:
' logEvent without eventCustomParameters
trackEventParameters = { "af_revenue": 24.22, "af_currency": "ILS" }
AppsFlyer().logEvent("af_purchase", trackEventParameters)
' logEvent with eventCustomParameters
trackEventParameters = { "af_revenue": 24.22, "af_currency": "ILS", "freeHandParam": "freeHandValue" }
trackCustomEventParameters = { "freeHandParam": "freeHandValue" }
AppsFlyer().logEvent("af_purchase", trackEventParameters, trackCustomEventParameters)
SetCustomerUserId
This method sets a customer ID that enables you to cross-reference your unique ID with the AppsFlyer unique ID and other device IDs. Note: You can only use this method before calling Start()
.
The customer ID is available in raw data reports and in the postbacks sent via API.
Firma de método
setCustomerUserId(string cuid)
Usage:
AppsFlyer().init(devkey, appid)
AppsFlyer().setCustomerUserId("")
AppsFlyer().start()
Ejecución de la aplicación de muestra
- Abre la carpeta
appsflyer-sample-app
en VSCode. - In
source/main.brs
, reemplaza los siguientes parámetros por los tuyos propios:
devkey = << DEV_KEY >>
appid = << APP_ID >>
-
Deploy the channel: - by (using this plugin makes it easier), - by zipping the content of the
source
folder
and then deploying it to Roku through Roku's Development Application Installer:
-
After the app loads, you may use the following commands through the Roku remote:
- Click the down button to set customer user id (cuid) to
"AF roku test CUID"
. - Click the right button to set customer user id (cuid) to
""
(reset it). - Click the up button to stop the SDK.
- Click the left button to send the start (first open/session) event.
- Click the options button (*) to send logEvent.
- Click the replay button (*) to send logEvent with custom parameters.
- Click the OK button after every command in order to refresh the logs.
- Click the down button to set customer user id (cuid) to
Implementación de AppsFlyer en tu canal de Roku
Setup
- Copia los archivos desde la carpeta
appsflyer-integration-files
en tu proyecto. - Agrega el siguiente código a tu archivo
main.brs
e inicializa la integración de AppsFlyer:
Function Main(args as Dynamic) as Void
...
showAppsflyerChannelSGScreen(args)
...
End Function
sub showAppsflyerChannelSGScreen(args as Dynamic)
screen = CreateObject("roSGScreen")
m.port = CreateObject("roMessagePort")
screen.setMessagePort(m.port)
scene = screen.CreateScene("AppsFlyerScene")
screen.show()
' Initialize the AppsFlyer integration
AppsFlyer().init(DEV_KEY, APP_ID)
' Enable debugging if necessary
AppsFlyer().enableDebugLogs(true) ' same as AppsFlyer().setLogLevel("debug")
' ConversionData response arrives here
while true
msg = Wait(0, m.port)
?"MESSAGE RECEIVED: "msg.GetData()
msgType = Type(msg)
if msgType = "roSGScreenEvent"
if msg.isScreenClosed() then
return
end if
end if
end while
end sub
- Start the SDK.
- Reporta los eventos in-app.
Actualizado hace 7 meses