{"id":8528,"date":"2020-08-19T07:47:00","date_gmt":"2020-08-19T07:47:00","guid":{"rendered":"https:\/\/tenjin.com\/?p=8528"},"modified":"2024-02-27T10:55:39","modified_gmt":"2024-02-27T10:55:39","slug":"ios-14-mmp-free-publisher-guide","status":"publish","type":"post","link":"https:\/\/tenjin.com\/es\/blog\/ios-14-mmp-free-publisher-guide\/","title":{"rendered":"Prepar\u00e1ndose para iOS 14: gu\u00eda para editores sin MMP con Kevin Bravo, creador de Elixir"},"content":{"rendered":"<p>Un mes antes del\u00a0<a href=\"https:\/\/blog.tenjin.com\/new-rules-of-attribution-ios-14\/\">lanzamiento de iOS 14<\/a>todav\u00eda hay muchas especulaciones en torno a lo que suceder\u00e1 a continuaci\u00f3n para <a href=\"https:\/\/docs.tenjin.com\/docs\/mmp\">MMP<\/a>s. \u00bfEn qu\u00e9 medida cambiar\u00e1 su papel? \u00bfLos anunciantes seguir\u00e1n pagando entre 1 y 5 c\u00e9ntimos por cada instalaci\u00f3n rastreada de pago en iOS, aunque ya no tenga granularidad a nivel de usuario?  \u00bfPermitir\u00e1 Apple que los MMP validen los valores de conversi\u00f3n aunque no se mencione en la documentaci\u00f3n de Apple? Aunque estas preguntas no est\u00e1n claras, hemos decidido abordar las cosas que los desarrolladores pueden hacer hoy en d\u00eda, sin la participaci\u00f3n de los MMP.<\/p>\n\n\n\n<p>Nos sentamos con el cofundador de la agencia de crecimiento m\u00f3vil&nbsp;<a href=\"https:\/\/2ndpotion.com\/\">2\u00aaPoci\u00f3n<\/a>,&nbsp;<a href=\"https:\/\/www.linkedin.com\/in\/kevinbravo\/\">Kevin Bravo<\/a>para hablar de cosas que los desarrolladores pueden utilizar ahora mismo y que est\u00e1n documentadas por Apple. Kevin cre\u00f3 la primera soluci\u00f3n de c\u00f3digo abierto que interact\u00faa con SKAdNetwork de Apple llamada&nbsp;<a href=\"https:\/\/github.com\/2ndpotion\/ElixiriOS\">Elixir<\/a>as\u00ed que sabemos que es perfecto para este tipo de conversaci\u00f3n.<\/p>\n\n\n\n<p>Esto es lo que trataremos hoy con Kevin.<\/p>\n\n\n\n<p>1)&nbsp;<strong>Para desarrolladores y dise\u00f1adores de juegos<\/strong>La ventana emergente de iOS pide consentimiento para compartir el IDFA del usuario - &nbsp;<em>AppTrackingTransparency<\/em>&nbsp;m\u00e9todo.<\/p>\n\n\n\n<p>2)&nbsp;<strong>Para desarrolladores<\/strong>, una visi\u00f3n general del nuevo marco de atribuci\u00f3n de Apple - &nbsp;<em>SKAdNetwork<\/em>.<\/p>\n\n\n\n<p>2.1)&nbsp;<strong>Para desarrolladores<\/strong>, atribuci\u00f3n de instalaciones - integrar&nbsp;<em>registerAppForAdNetworkAttribution()<\/em>m\u00e9todo<\/p>\n\n\n\n<p>2.2)&nbsp;<strong>Para desarrolladores<\/strong>, atribuir eventos post-instalaci\u00f3n - integrar&nbsp;<em>updateConversionValue(_:)<\/em>m\u00e9todo<\/p>\n\n\n\n<p>2.3)&nbsp;<strong>Para los directivos de la UA<\/strong>Comprender c\u00f3mo informa Apple a la red publicitaria de los eventos de instalaci\u00f3n y postinstalaci\u00f3n - Postbacks y temporizadores<\/p>\n\n\n\n<p>3)<strong>&nbsp;Para que todo el equipo aporte ideas<\/strong>\u00bfQu\u00e9 podr\u00eda ser mejor?&nbsp;<strong>-&nbsp;<\/strong>Buenas pr\u00e1cticas y dificultades actuales<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1) Pedir a los usuarios que compartan su IDFA - Integrar<a href=\"https:\/\/developer.apple.com\/documentation\/apptrackingtransparency\">&nbsp;ApptrackingTransparencia<\/a><\/h2>\n\n\n\n<p><strong>Kevin:&nbsp;<\/strong>AppTrackingTransparency es un framework disponible para iOS 14 que permite a los desarrolladores de apps pedir permiso para rastrear al usuario. Este permiso es necesario para acceder al IDFA del usuario con fines de atribuci\u00f3n.<\/p>\n\n\n\n<p>Integrarlo y utilizarlo requerir\u00e1 que pidas al usuario que acceda a su IDFA con esta ventana emergente:<img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/s3.amazonaws.com\/tenjin-blog\/2020\/08\/iOS14_post-img--1-.jpg?ssl=1\"><\/p>\n\n\n\n<p>Si el usuario acepta el seguimiento, podr\u00e1s solicitar su IDFA. De lo contrario, el IDFA ser\u00e1 0000-0000-0000-0000.<\/p>\n\n\n\n<p>Tenga en cuenta que no podr\u00e1 pedir permiso si el usuario tiene activada la opci\u00f3n LAT (Seguimiento limitado de anuncios).<\/p>\n\n\n\n<p><strong>P: \u00bfCu\u00e1ntas veces puedo mostrar una ventana emergente nativa?<\/strong><\/p>\n\n\n\n<p><strong>Kevin:&nbsp;<\/strong>S\u00f3lo se puede mostrar una vez por dispositivo.<\/p>\n\n\n\n<p><strong>P: \u00bfPuedo volver a pedir el consentimiento del usuario si se rechaza inicialmente?<\/strong><\/p>\n\n\n\n<p><strong>Kevin:&nbsp;<\/strong>Si el usuario ya ha visto esta ventana emergente, no podr\u00e1 volver a mostrarla.<\/p>\n\n\n\n<p><strong>P: \u00bfPuedo mostrar mi ventana emergente personalizada antes que la nativa?<\/strong><\/p>\n\n\n\n<p><strong>Kevin:&nbsp;<\/strong>Puede decidir cu\u00e1ndo mostrar\u00e1 esta ventana emergente, lo que significa que se le permite publicar una ventana emergente adicional antes.<\/p>\n\n\n\n<p>De esta forma, puede decidir mostrar la ventana emergente de permiso s\u00f3lo si el usuario ha dicho que s\u00ed a su permiso personalizado.<strong>.<\/strong><\/p>\n\n\n\n<p>Esta estrategia ya es utilizada por muchas empresas para empujar las solicitudes de notificaciones y le ayudar\u00e1 a tener una segunda oportunidad para pedir permiso.<\/p>\n\n\n\n<p><strong>P: \u00bfQu\u00e9 ocurre si un desarrollador de aplicaciones no integra AppTrackingTransparency?<\/strong><\/p>\n\n\n\n<p><strong>Kevin:&nbsp;<\/strong>Si no desea\/necesita solicitar el IDFA, puede decidir no mostrar esta ventana emergente.<\/p>\n\n\n\n<p>Esto significa que no tendr\u00e1 acceso a su IDFA (se mostrar\u00e1 como 0000-0000-0000-0000) y que las redes publicitarias tampoco tendr\u00e1n acceso a \u00e9l.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2) Visi\u00f3n general del nuevo marco de atribuci\u00f3n de Apple - &nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\">SKAdNetwork<\/a><\/h2>\n\n\n\n<p><strong>Kevin:<\/strong>&nbsp;Apple ofrece una soluci\u00f3n de atribuci\u00f3n an\u00f3nima denominada&nbsp;<strong>Red SKAD<\/strong>que permite a las aplicaciones realizar un seguimiento de las instalaciones procedentes de distintas redes publicitarias sin comprometer el anonimato de los usuarios.<\/p>\n\n\n\n<p>Al utilizar SKADNetwork, se adjunta una firma a cada clic en un anuncio. Cuando el usuario abra su aplicaci\u00f3n por primera vez, Apple podr\u00e1 verificar si procede de un anuncio espec\u00edfico con esta firma.<\/p>\n\n\n\n<p>A continuaci\u00f3n, se env\u00eda un postback a la red publicitaria para atribuir una nueva instalaci\u00f3n.<\/p>\n\n\n\n<p>La firma no contiene ning\u00fan dato de identificaci\u00f3n, lo que mantiene la privacidad al m\u00e1ximo al hacer imposible asociar una instalaci\u00f3n a un usuario concreto.<\/p>\n\n\n\n<p>Para integrar SKADNetwork, es necesario llamar a dos m\u00e9todos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/2943654-registerappforadnetworkattributi\">registerAppForAdNetworkAttribution<\/a>(): Este m\u00e9todo debe ser llamado en el primer lanzamiento y registrar el usuario para la atribuci\u00f3n. Si el usuario procede de un anuncio firmado, se disparar\u00e1 un postback en las horas siguientes, notificando a la red publicitaria de la instalaci\u00f3n de esta app.<\/li>\n\n\n\n<li><a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/3566697-updateconversionvalue\">updateConversionValue(_:)<\/a>&nbsp;Este m\u00e9todo debe ser llamado cada vez que desee actualizar el valor de conversi\u00f3n asociado a este usuario espec\u00edfico. Puede llamar a este m\u00e9todo tantas veces como desee, pero el valor de conversi\u00f3n solo se actualizar\u00e1 si es superior al anterior.<\/li>\n<\/ul>\n\n\n\n<p>Para la monetizaci\u00f3n de anuncios, los desarrolladores necesitan determinar, por adelantado, las redes de anuncios que van a utilizar para la monetizaci\u00f3n, y especificarlas dentro de su aplicaci\u00f3n a trav\u00e9s de plist como se especifica en&nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/configuring_the_participating_apps\">esta documentaci\u00f3n<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2.1) Instalaci\u00f3n de atributos - Integraci\u00f3n de&nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/2943654-registerappforadnetworkattributi\">registerAppForAdNetworkAttribution<\/a><\/h2>\n\n\n\n<p><strong>Kevin:<\/strong>&nbsp;Al llamar a registerAppForAdNetworkAttribution en el primer lanzamiento de la aplicaci\u00f3n, est\u00e1 haciendo todo lo necesario para habilitar la atribuci\u00f3n de instalaci\u00f3n de aplicaciones con SKADNetwork.<\/p>\n\n\n\n<p>Sin embargo, la atribuci\u00f3n de instalaci\u00f3n s\u00f3lo ser\u00e1 posible si la red publicitaria firma sus anuncios con SKADNetwork.<\/p>\n\n\n\n<p>Para la publicidad, los desarrolladores deben asegurarse de que las redes publicitarias tengan SKADNetwork integrado en su lado para permitir la atribuci\u00f3n y los postbacks.<\/p>\n\n\n\n<p>Para facilitar las cosas, existe una lista de todos los ID de redes publicitarias disponibles&nbsp;<a href=\"https:\/\/github.com\/skadnetwork\/ad-network-ids\">aqu\u00ed<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2.2) Atribuir los eventos posteriores a la instalaci\u00f3n - Integrar&nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/3566697-updateconversionvalue\">updateConversionValue(_:)<\/a><\/h2>\n\n\n\n<p><strong>Kevin:<\/strong>&nbsp;Puede asignar un valor de conversi\u00f3n a una instalaci\u00f3n espec\u00edfica. Se trata de un valor num\u00e9rico comprendido entre 0 y 63.<\/p>\n\n\n\n<p>Es una \"se\u00f1al\" que te ayudar\u00e1 a entender lo valioso que es este usuario espec\u00edfico, sin darte una forma de identificarlo.<\/p>\n\n\n\n<p>Las redes publicitarias pueden utilizar esta informaci\u00f3n para comprender el valor de cada instalaci\u00f3n para su negocio. Esta se\u00f1al puede ayudar a las redes publicitarias a identificar mejores audiencias para sus anuncios y mejorar el rendimiento de sus campa\u00f1as.<\/p>\n\n\n\n<p><strong>P: \u00bfCu\u00e1ndo se debe utilizar updateConversionValue(_:)?<\/strong><\/p>\n\n\n\n<p><strong>Kevin:<\/strong>&nbsp;El valor de conversi\u00f3n puede actualizarse varias veces para el mismo usuario, pero existen algunas limitaciones:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>S\u00f3lo puede actualizar el valor de conversi\u00f3n con un valor superior al de la llamada anterior (1-&gt; 2 pero no 3-&gt;2)<\/li>\n\n\n\n<li>Un valor limitado entre 0-63<\/li>\n<\/ul>\n\n\n\n<p>Le conviene utilizar valores de conversi\u00f3n porque proporcionan se\u00f1ales valiosas a sus redes publicitarias. Tambi\u00e9n le permitir\u00e1<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Analizar el comportamiento esencial en la aplicaci\u00f3n despu\u00e9s de instalarla desde una campa\u00f1a\/canal\/pa\u00eds espec\u00edfico.<\/li>\n\n\n\n<li>Ofrezca puntos de datos adicionales a la red publicitaria que pueda utilizar para identificar cohortes valiosas para su juego y optimizar el rendimiento de sus campa\u00f1as.<\/li>\n<\/ul>\n\n\n\n<p>Debe pensar en c\u00f3mo definir\u00e1 cada valor de conversi\u00f3n para sacar el m\u00e1ximo partido de SKADNetwork.<\/p>\n\n\n\n<p>Existen distintos enfoques para la gesti\u00f3n de los valores de conversi\u00f3n:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Seguimiento de los ingresos<\/li>\n\n\n\n<li>por ejemplo, el valor de conversi\u00f3n 1 es 0,1 EUR, 50 es 5,0 EUR<\/li>\n\n\n\n<li>Eventos en pista<\/li>\n\n\n\n<li>por ejemplo, level1_completed = valor de conversi\u00f3n 1<\/li>\n\n\n\n<li>Seguimiento de los ingresos y eventos de progreso<\/li>\n\n\n\n<li>p. ej., Valor de conversi\u00f3n 10 = lvl5_completed y gastar 1EUR<\/li>\n\n\n\n<li>Etc..<\/li>\n<\/ul>\n\n\n\n<p>Para los eventos de Ingresos + progreso, he creado una tabla de conversi\u00f3n que le permite definir cada evento que va a seguir y entender el valor de conversi\u00f3n que va a enviar.<img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/s3.amazonaws.com\/tenjin-blog\/2020\/08\/Screenshot-at-Aug-18-16-43-54.png?ssl=1\"><\/p>\n\n\n\n<p>Como ver\u00e1s en la hoja de c\u00e1lculo, estamos utilizando binarios para convertir los eventos en valores de conversi\u00f3n:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cada valor de conversi\u00f3n se traduce en un conjunto de 6 valores binarios.<\/li>\n\n\n\n<li>Los 3 primeros valores binarios representan los ingresos de este usuario concreto (por ejemplo, compra &gt; 10$ = \"101\")<\/li>\n\n\n\n<li>Los 3 \u00faltimos valores binarios representan el progreso (por ejemplo, 10 niveles completados = \"011\")<\/li>\n\n\n\n<li>Combinando los dos conjuntos de valores binarios, obtenemos un valor de conversi\u00f3n (por ejemplo, \"<strong>101001<\/strong>\"se convierte en el valor de conversi\u00f3n&nbsp;<strong>43<\/strong>)<\/li>\n<\/ul>\n\n\n\n<p>Encontrar\u00e1 la hoja de c\u00e1lculo&nbsp;<a href=\"https:\/\/docs.google.com\/spreadsheets\/d\/1jrRrTP6YX62of2WaJamtPBSWZJ-97IpTWn0IwTroH6Y\/edit?usp=drive_web&amp;ouid=110875297429935682272\">aqu\u00ed<\/a>:<\/p>\n\n\n\n<p><strong>P: \u00bfQu\u00e9 es Elixir y c\u00f3mo ayuda?<\/strong><\/p>\n\n\n\n<p><strong>Kevin<\/strong>: Los valores de conversi\u00f3n solo se pueden enviar desde la app, lo que hace complejo ajustar la forma de realizar el seguimiento de los valores de conversi\u00f3n sin actualizarla.<\/p>\n\n\n\n<p>Elixir es un&nbsp;<strong>SDK de c\u00f3digo abierto<\/strong>&nbsp;que le permite definir y actualizar sus valores de conversi\u00f3n sin necesidad de actualizar la aplicaci\u00f3n despu\u00e9s de cada cambio.<\/p>\n\n\n\n<p>As\u00ed funciona:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Defina su tabla de conversi\u00f3n utilizando uno de los enfoques disponibles (ingresos \/ mixto \/ progreso)<\/li>\n\n\n\n<li>Lo almacena en su servidor como JSON<\/li>\n\n\n\n<li>Usted integra Elixir SDK, el seguimiento de todos los eventos disponibles en la aplicaci\u00f3n<\/li>\n\n\n\n<li>En el primer lanzamiento, Elixir SDK solicitar\u00e1 el JSON y comparar\u00e1 los valores de conversi\u00f3n con las acciones realizadas por el usuario en tiempo real.<\/li>\n\n\n\n<li>Elixir SDK actualizar\u00e1 el conversionValue bas\u00e1ndose en la tabla que ha creado<\/li>\n<\/ol>\n\n\n\n<p><a href=\"https:\/\/github.com\/2ndpotion\/ElixiriOS\">El SDK est\u00e1 disponible aqu\u00ed<\/a><\/p>\n\n\n\n<p>Puede ver un ejemplo de&nbsp;<a href=\"https:\/\/jsonkeeper.com\/b\/9J5B\">tabla de conversi\u00f3n JSON<\/a>. Este es el documento que Elixir lee para generar el valor de conversi\u00f3n a rastrear despu\u00e9s de las acciones de cada usuario.<\/p>\n\n\n\n<p>Actualmente, s\u00f3lo hay un tipo de tabla disponible&nbsp;<a href=\"https:\/\/docs.google.com\/spreadsheets\/d\/1jrRrTP6YX62of2WaJamtPBSWZJ-97IpTWn0IwTroH6Y\/edit?usp=drive_web&amp;ouid=110875297429935682272\">(enlace a la tabla)<\/a>&nbsp;para Elixir. A medida que los desarrolladores colaboren en el proyecto, se cubrir\u00e1n f\u00e1cilmente todos los modelos (binario de ingresos publicitarios, marca de tiempo, geogr\u00e1fico, etc.).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2.3) Comprender c\u00f3mo informa Apple a la red publicitaria de los eventos de instalaci\u00f3n y postinstalaci\u00f3n - Postbacks y temporizadores<\/h2>\n\n\n\n<p><strong>P: \u00bfPuede explicar c\u00f3mo funciona el temporizador de postbacks en updateConversionValue(_:)?<\/strong><\/p>\n\n\n\n<p><strong>Kevin<\/strong>: Hay una complejidad adicional en la forma en que se programan los postbacks.<\/p>\n\n\n\n<p>Se producen dos temporizadores<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Temporizador de 24 horas: se puede reiniciar varias veces y tiene una duraci\u00f3n definida de 24 horas<\/li>\n\n\n\n<li>Temporizador aleatorio: una vez que se inicia, no se puede reiniciar. La duraci\u00f3n es aleatoria, entre 0-24 horas.<\/li>\n<\/ul>\n\n\n\n<p>Cuando se activa registerAppForAdNetworkAttribution(), se inicia el temporizador de 24 horas. Si decide activar&nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/3566697-updateconversionvalue\">updateConversionValue(_:)<\/a>el temporizador 1 se pone a cero y vuelve a empezar.<\/p>\n\n\n\n<p>Cada vez que disparas&nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/3566697-updateconversionvalue\">updateConversionValue(_:)<\/a>El temporizador de 24 horas se reiniciar\u00e1.<\/p>\n\n\n\n<p>Supongamos que usted no dispara&nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/3566697-updateconversionvalue\">updateConversionValue(_:)<\/a>&nbsp;antes de que expire el temporizador de 24 horas, se iniciar\u00e1 un temporizador aleatorio. Una vez que comience el temporizador aleatorio, ya no podr\u00e1s actualizar el valor de conversi\u00f3n.<\/p>\n\n\n\n<p>Al final del temporizador aleatorio, el postback se env\u00eda a la red publicitaria. Este postback puede incluir (o no) un valor de conversi\u00f3n (ser\u00e1 el \u00faltimo valor que haya establecido para este usuario espec\u00edfico)<img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/s3.amazonaws.com\/tenjin-blog\/2020\/08\/scheme_11.jpg?ssl=1\"><\/p>\n\n\n\n<p><em>La documentaci\u00f3n de Apple no especifica un l\u00edmite de tiempo o de ocurrencias para updateConversionValue. Esto significa que, siempre que el usuario acuda cada 24 horas, puede enviar un nuevo conversionValue hasta 63 veces (bas\u00e1ndose en las limitaciones descritas en la pregunta \"\u00bfCu\u00e1ndo debe utilizar updateConversionValue(_:)?\").<\/em><\/p>\n\n\n\n<p><strong>P: \u00bfQu\u00e9 datos reciben las redes publicitarias de SKADNetwork?<\/strong><\/p>\n\n\n\n<p><strong>Kevin<\/strong>: Las redes publicitarias recibir\u00e1n un postback por cada instalaci\u00f3n con el siguiente aspecto:<img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/Xy9AXKm1arTL1LR5HNNBKjezwgcne0Cv5w98MtYnehf3XFC2ph0xpFXT8qzEn_ysA8RsJrd-XCFLLq0XIbYpzL_W3QR2BtAGF3TmEVB6AzFPEM4G3uJbi_fmOoaZ0eN834G5kNJf\"><\/p>\n\n\n\n<p>Algunos valores son opcionales (por ejemplo, el valor de conversi\u00f3n) y pueden no incluirse en el postback.<\/p>\n\n\n\n<p>M\u00e1s detalles sobre este postback y c\u00f3mo las redes publicitarias pueden verificar la autenticidad de cada instalaci\u00f3n en&nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/verifying_an_install_validation_postback\">aqu\u00ed<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3) Mejores pr\u00e1cticas y puntos d\u00e9biles existentes<\/h2>\n\n\n\n<p><strong>P: \u00bfCu\u00e1les son sus recomendaciones a la hora de utilizar updateConversionValue(_:)?<\/strong><\/p>\n\n\n\n<p><strong>Kevin:<\/strong>&nbsp;Es necesario determinar las acciones m\u00e1s valiosas que los usuarios pueden realizar en su primera sesi\u00f3n y en los 1 a 3 d\u00edas siguientes.<\/p>\n\n\n\n<p>Un evento de valor te da una buena indicaci\u00f3n del compromiso de los usuarios con tu aplicaci\u00f3n. La compra es la se\u00f1al m\u00e1s alta que puedes obtener.<\/p>\n\n\n\n<p>A continuaci\u00f3n, debe ordenar los eventos de menor a mayor se\u00f1al. Esta lista de eventos te ayudar\u00e1 a definir la tabla de conversi\u00f3n.<\/p>\n\n\n\n<p><strong>P: \u00bfQu\u00e9 otras dificultades pueden encontrar los desarrolladores al trabajar con SKAdNetwork?<\/strong><\/p>\n\n\n\n<p><strong>Kevin:&nbsp;<\/strong>Trabajar con SKADNetwork supone diferentes retos:<\/p>\n\n\n\n<p>-&nbsp;<strong>Gesti\u00f3n de la fecha y hora de instalaci\u00f3n:&nbsp;<\/strong>SKADNetwork aleatoriza el momento en que se env\u00eda el postback a la red publicitaria, y no se incluye ninguna marca de tiempo de instalaci\u00f3n. Esto hace que sea complicado determinar cu\u00e1ndo se produce la instalaci\u00f3n. La cosa se complica a\u00fan m\u00e1s si decide enviar valores de conversi\u00f3n despu\u00e9s de las primeras 24 horas.<\/p>\n\n\n\n<p>Cuanto m\u00e1s espere antes de detenerse para actualizar los valores de conversi\u00f3n, m\u00e1s amplia ser\u00e1 la ventana de tiempo de instalaci\u00f3n.<\/p>\n\n\n\n<p>Una soluci\u00f3n podr\u00eda ser utilizar algunos de los bits del valor de conversi\u00f3n para definir el d\u00eda de instalaci\u00f3n y limitar el n\u00famero de d\u00edas en los que actualizar\u00e1 el valor de conversi\u00f3n (por ejemplo, tres d\u00edas).<\/p>\n\n\n\n<p>-&nbsp;<strong>Recuperaci\u00f3n de datos \/ verificaci\u00f3n de firmas:&nbsp;<\/strong>Actualmente, s\u00f3lo las redes publicitarias tendr\u00e1n acceso a la instalaci\u00f3n de postbacks. A\u00fan no est\u00e1 claro qu\u00e9 redes publicitarias permitir\u00e1n a los anunciantes acceder a los datos de SKADNetwork. Solicitar estos datos ser\u00e1 vital, ya que podr\u00e1n&nbsp;<a href=\"https:\/\/developer.apple.com\/documentation\/storekit\/skadnetwork\/verifying_an_install_validation_postback\">verificar la autenticidad de las instalaciones con una firma<\/a>.<\/p>\n\n\n\n<p>-&nbsp;<strong>Gesti\u00f3n de la atribuci\u00f3n del IDFA + SKADNetwork:&nbsp;<\/strong>\u00bfC\u00f3mo trabajar con SKADNetwork y seguir midiendo la atribuci\u00f3n a nivel de usuario optado por el seguimiento IDFA? Este modelo mixto ser\u00e1 complejo y requerir\u00e1 un excelente flujo de trabajo para evitar la deduplicaci\u00f3n de los registros de instalaci\u00f3n.<\/p>","protected":false},"excerpt":{"rendered":"<p>One month before the\u00a0release of iOS 14, there are still many speculations around what\u2019s happening next for MMPs. How much will their role change? Are advertisers still ok paying 1-5 cents for each paid tracked install on iOS, even though it no longer has user-level granularity? \u00a0Will Apple allow MMPs to validate Conversion Values though&#8230;<\/p>","protected":false},"author":5,"featured_media":8476,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5,8],"tags":[],"class_list":["post-8528","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices","category-mobile-marketing-trends"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Preparing for iOS 14: MMP-free publisher guide with Kevin Bravo, creator of Elixir - Tenjin<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/tenjin.com\/es\/blog\/ios-14-mmp-free-publisher-guide\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Preparing for iOS 14: MMP-free publisher guide with Kevin Bravo, creator of Elixir - Tenjin\" \/>\n<meta property=\"og:description\" content=\"One month before the\u00a0release of iOS 14, there are still many speculations around what\u2019s happening next for MMPs. How much will their role change? Are advertisers still ok paying 1-5 cents for each paid tracked install on iOS, even though it no longer has user-level granularity? \u00a0Will Apple allow MMPs to validate Conversion Values though...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tenjin.com\/es\/blog\/ios-14-mmp-free-publisher-guide\/\" \/>\n<meta property=\"og:site_name\" content=\"Tenjin\" \/>\n<meta property=\"article:published_time\" content=\"2020-08-19T07:47:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-02-27T10:55:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Roman Garbar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Roman Garbar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/\"},\"author\":{\"name\":\"Roman Garbar\",\"@id\":\"https:\/\/tenjin.com\/ru\/#\/schema\/person\/bbb089a8de6e9a87d102755431201f84\"},\"headline\":\"Preparing for iOS 14: MMP-free publisher guide with Kevin Bravo, creator of Elixir\",\"datePublished\":\"2020-08-19T07:47:00+00:00\",\"dateModified\":\"2024-02-27T10:55:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/\"},\"wordCount\":2013,\"image\":{\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png\",\"articleSection\":[\"Best practices\",\"Mobile Marketing Trends\"],\"inLanguage\":\"es\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/\",\"url\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/\",\"name\":\"Preparing for iOS 14: MMP-free publisher guide with Kevin Bravo, creator of Elixir - Tenjin\",\"isPartOf\":{\"@id\":\"https:\/\/tenjin.com\/ru\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png\",\"datePublished\":\"2020-08-19T07:47:00+00:00\",\"dateModified\":\"2024-02-27T10:55:39+00:00\",\"author\":{\"@id\":\"https:\/\/tenjin.com\/ru\/#\/schema\/person\/bbb089a8de6e9a87d102755431201f84\"},\"breadcrumb\":{\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#primaryimage\",\"url\":\"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png\",\"contentUrl\":\"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/tenjin.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Preparing for iOS 14: MMP-free publisher guide with Kevin Bravo, creator of Elixir\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/tenjin.com\/ru\/#website\",\"url\":\"https:\/\/tenjin.com\/ru\/\",\"name\":\"Tenjin\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/tenjin.com\/ru\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/tenjin.com\/ru\/#\/schema\/person\/bbb089a8de6e9a87d102755431201f84\",\"name\":\"Roman Garbar\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/tenjin.com\/ru\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fe7957b272f6044b3f45b39cd1bb097cb540cf7f0b903790729fa43b1e43d739?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fe7957b272f6044b3f45b39cd1bb097cb540cf7f0b903790729fa43b1e43d739?s=96&d=mm&r=g\",\"caption\":\"Roman Garbar\"},\"url\":\"https:\/\/tenjin.com\/es\/blog\/author\/romantenjin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Prepar\u00e1ndose para iOS 14: Gu\u00eda para editores sin MMP con Kevin Bravo, creador de Elixir - Tenjin","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/tenjin.com\/es\/blog\/ios-14-mmp-free-publisher-guide\/","og_locale":"es_ES","og_type":"article","og_title":"Preparing for iOS 14: MMP-free publisher guide with Kevin Bravo, creator of Elixir - Tenjin","og_description":"One month before the\u00a0release of iOS 14, there are still many speculations around what\u2019s happening next for MMPs. How much will their role change? Are advertisers still ok paying 1-5 cents for each paid tracked install on iOS, even though it no longer has user-level granularity? \u00a0Will Apple allow MMPs to validate Conversion Values though...","og_url":"https:\/\/tenjin.com\/es\/blog\/ios-14-mmp-free-publisher-guide\/","og_site_name":"Tenjin","article_published_time":"2020-08-19T07:47:00+00:00","article_modified_time":"2024-02-27T10:55:39+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png","type":"image\/png"}],"author":"Roman Garbar","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Roman Garbar","Tiempo de lectura":"10 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#article","isPartOf":{"@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/"},"author":{"name":"Roman Garbar","@id":"https:\/\/tenjin.com\/ru\/#\/schema\/person\/bbb089a8de6e9a87d102755431201f84"},"headline":"Preparing for iOS 14: MMP-free publisher guide with Kevin Bravo, creator of Elixir","datePublished":"2020-08-19T07:47:00+00:00","dateModified":"2024-02-27T10:55:39+00:00","mainEntityOfPage":{"@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/"},"wordCount":2013,"image":{"@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png","articleSection":["Best practices","Mobile Marketing Trends"],"inLanguage":"es"},{"@type":"WebPage","@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/","url":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/","name":"Prepar\u00e1ndose para iOS 14: Gu\u00eda para editores sin MMP con Kevin Bravo, creador de Elixir - Tenjin","isPartOf":{"@id":"https:\/\/tenjin.com\/ru\/#website"},"primaryImageOfPage":{"@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#primaryimage"},"image":{"@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png","datePublished":"2020-08-19T07:47:00+00:00","dateModified":"2024-02-27T10:55:39+00:00","author":{"@id":"https:\/\/tenjin.com\/ru\/#\/schema\/person\/bbb089a8de6e9a87d102755431201f84"},"breadcrumb":{"@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#primaryimage","url":"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png","contentUrl":"https:\/\/tenjin.com\/wp-content\/uploads\/2023\/09\/podcast_cover.png","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/tenjin.com\/ja\/blog\/ios-14-mmp-free-publisher-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/tenjin.com\/"},{"@type":"ListItem","position":2,"name":"Preparing for iOS 14: MMP-free publisher guide with Kevin Bravo, creator of Elixir"}]},{"@type":"WebSite","@id":"https:\/\/tenjin.com\/ru\/#website","url":"https:\/\/tenjin.com\/ru\/","name":"Tenjin","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/tenjin.com\/ru\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/tenjin.com\/ru\/#\/schema\/person\/bbb089a8de6e9a87d102755431201f84","name":"Roman Garbar","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/tenjin.com\/ru\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/fe7957b272f6044b3f45b39cd1bb097cb540cf7f0b903790729fa43b1e43d739?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fe7957b272f6044b3f45b39cd1bb097cb540cf7f0b903790729fa43b1e43d739?s=96&d=mm&r=g","caption":"Roman Garbar"},"url":"https:\/\/tenjin.com\/es\/blog\/author\/romantenjin\/"}]}},"_links":{"self":[{"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/posts\/8528","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/comments?post=8528"}],"version-history":[{"count":0,"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/posts\/8528\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/media\/8476"}],"wp:attachment":[{"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/media?parent=8528"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/categories?post=8528"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tenjin.com\/es\/wp-json\/wp\/v2\/tags?post=8528"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}