Skip to main content
Esta guía le ayuda a migrar de los SDK v1 más antiguos de PlayFab al nuevo SDK unificado v2 de PlayFab. El SDK unificado consolida los SDK que antes eran independientes (Core, Services, Party, Multiplayer) en una solución única e integrada con una interoperabilidad mejorada y una autenticación simplificada.

Información general de los cambios

El SDK unificado v2 de PlayFab presenta varias mejoras clave:
  • Arquitectura unificada: todos los servicios de PlayFab (Core, Services, Party, Multiplayer, GameSave) están integrados en un solo SDK
  • Autenticación simplificada: un inicio de sesión proporciona acceso a todos los servicios de PlayFab mediante identificadores de entidad
  • Administración automática de tokens: se acabó la actualización manual de tokens y la administración de identificadores de entidad
  • Interoperabilidad mejorada: comunicación fluida entre los diferentes servicios de PlayFab
  • Estructura de proyecto simplificada: una única instalación de SDK en lugar de varios paquetes independientes

Cambios en la estructura del proyecto

Para usuarios del GDK

Diseño heredado (GDK 2504 y anteriores):
  • Extensiones independientes para cada componente del SDK
  • Carpetas de inclusión y de bibliotecas individuales: PlayFab.Services.Cpp, PlayFab.Party.Cpp, PlayFab.Multiplayer.Cpp
  • Cada servicio tenía nombres de ExtensionLibrary distintos en el GDK
  • Se requerían varias descargas para los diferentes servicios de PlayFab desde GitHub
Nuevo diseño (GDK 2510 en adelante):
  • Un único SDK unificado de PlayFab
  • Estructura organizada por plataforma con subcarpetas (xbox, windows, etc.)
  • Todos los encabezados consolidados en una sola carpeta de inclusión (Core, Services, Multiplayer, Party, GameSave)
  • Bibliotecas combinadas en una carpeta lib unificada

Actualización de las referencias del proyecto

Durante el período de transición (GDK 2510), los SDK antiguos y nuevos coexisten. Para migrar:
  1. Quite las referencias antiguas: elimine las referencias a PlayFab.Services.Cpp, PlayFab.Party.Cpp y otras extensiones de SDK individuales
  2. Agregue la referencia unificada: haga referencia al nuevo SDK unificado de PlayFab o actualice las rutas de inclusión y de bibliotecas a las ubicaciones unificadas
  3. Planifique para el futuro: Microsoft quitará las carpetas antiguas en futuras versiones del GDK (posiblemente para 2026), así que actualice los archivos del proyecto en consecuencia

Para usuarios de GitHub/independientes

  • Reemplace las descargas de varios SDK por el paquete único del SDK unificado
  • Actualice las rutas del proyecto para usar la nueva estructura de carpetas organizada por plataforma

Autenticación y manejo de entidades

El concepto de entidades y tokens de entidad existe en ambas versiones, pero la forma de usarlos se ha simplificado en v2.

Cambios en la administración de tokens

Enfoque de los SDK independientes de PlayFab (v1):
  • Recuperación manual de tokens mediante PFAuthenticationGetEntityTokenAsync
  • Actualización manual de tokens cuando expiran
  • Paso de cadenas de identificador de entidad y token a otros servicios (por ejemplo, partyManager.CreateLocalUser(entityId, titlePlayerEntityToken, &localUser))
Enfoque del SDK unificado de PlayFab (v2):
  • Administración automática de tokens por parte del SDK de Core
  • Actualización de tokens en segundo plano antes de que expiren
  • Paso de PFEntityHandle directamente a otros servicios (por ejemplo, partyManager.CreateLocalUser(entityHandle, &localUser))

Pasos de migración para la autenticación

  1. Quite la administración manual de tokens: elimine el código que recupera o comprueba manualmente los tokens de PlayFab
  2. Almacene los identificadores de entidad: conserve el PFEntityHandle del inicio de sesión y úselo en todos los servicios de PlayFab
  3. Actualice las llamadas a los servicios: reemplace los parámetros de identificador de entidad/token por identificadores de entidad
  4. Controle la reautenticación: use las API PFAuthenticationReLogin*Async para escenarios de reautenticación

Cambios importantes en la API por componente

PlayFab Core

Impacto de la migración: se requieren cambios mínimos
  • La mayoría de las llamadas al servicio de Core permanecen sin cambios
  • Actualice las rutas de inclusión para que apunten a los encabezados del SDK unificado

PlayFab Services

Impacto de la migración: se requieren cambios mínimos
  • La mayoría de las llamadas a los servicios permanecen sin cambios
  • Actualice las rutas de inclusión para que apunten a los encabezados del SDK unificado

PlayFab Party (redes/voz)

Impacto de la migración: se requieren pequeños cambios

Cambios en la inicialización

Inicialización en v1:
Inicialización en v2:

Cambios en la creación de usuarios locales

Enfoque en v1:
Enfoque en v2:

Pasos de migración para Party

  1. Actualice la inicialización: reemplace la llamada simple a PartyManager::Initialize() por el enfoque con estructura de configuración
  2. Quite la recuperación de tokens: elimine cualquier código que obtenga manualmente el identificador de entidad/token para Party
  3. Pase identificadores de entidad: use PFEntityHandle directamente en lugar de parámetros de cadena
  4. Quite la lógica de actualización de tokens: elimine el código que comprueba o actualiza periódicamente los tokens de Party
  5. Actualice las dependencias: asegúrese de que PlayFab Core se inicialice antes de PartyManager::Initialize()
  6. Quite las llamadas específicas de XBOX: reemplace PartyXblManagerInitialize() por el genérico PartyInitialize() en XBOX

PlayFab Multiplayer (Lobby y Matchmaking)

Impacto de la migración: se requieren pequeños cambios Los conceptos básicos (Lobby, Ticket de matchmaking) siguen siendo los mismos, pero las funciones ahora esperan identificadores de entidad en lugar de cadenas.

Cambios en las operaciones de Lobby

Enfoque en v1:
Enfoque en v2:

Pasos de migración para Multiplayer

  1. Actualice las llamadas a funciones: reemplace los parámetros de identificador de PlayFab y token de entidad por PFEntityHandle
  2. Quite los pasos de autenticación: elimine las llamadas independientes de “Authenticate Multiplayer”
  3. Inicialice explícitamente: llame a PFMultiplayerInitialize() y posiblemente a PFMultiplayerStartProcessing()
  4. Actualice el matchmaking: use identificadores de entidad en la creación de tickets de matchmaking

Lista de comprobación general de migración

Actualizaciones de código

  • Actualice las rutas de inclusión: apunte al directorio de inclusión del SDK unificado
  • Actualice la vinculación de bibliotecas: vincule las bibliotecas unificadas en lugar de las independientes
  • Quite las funciones en desuso: elimine las llamadas a funciones eliminadas como PartyManager::CreateLocalUserWithEntityType
  • Reemplace la administración manual de tokens: quite la lógica de almacenamiento en caché y actualización de tokens
  • Actualice el orden de inicialización: asegúrese de que PlayFab Core se inicialice antes que los demás servicios

Lista de comprobación de pruebas

Después de la migración, verifique cada subsistema:
  • Autenticación: el inicio de sesión devuelve un identificador de entidad válido
  • Operaciones de Lobby: la creación y unión a salas funciona correctamente
  • Redes de Party: los jugadores pueden conectarse y comunicarse entre máquinas
  • Control de errores: todas las llamadas a PlayFab controlan los errores adecuadamente
  • Escenarios multiusuario: varios usuarios locales funcionan si corresponde

Problemas comunes y soluciones

Errores del compilador sobre parámetros ausentes:
  • Compruebe si las firmas de las funciones cambiaron para requerir PFEntityHandle
  • Asegúrese de pasar el identificador de entidad en lugar de identificadores de cadena
Errores de autenticación en tiempo de ejecución:
  • Verifique que PlayFab Core se inicialice antes que los demás servicios
  • Compruebe que el inicio de sesión se complete antes de crear usuarios locales en Party/Multiplayer
Regresiones de rendimiento:
  • Poco frecuentes, pero verifique que v2 no presente problemas en rutas de código críticas para el rendimiento

Ventajas de la migración

Simplificación del código

  • Complejidad reducida: quite el código de soluciones alternativas para la separación de servicios de v1
  • Control de errores unificado: todos los servicios de PlayFab usan una notificación de errores coherente
  • Autenticación centralizada: un solo flujo de inicio de sesión para todas las características de PlayFab

Interoperabilidad mejorada

  • Integración fluida: agregar nuevas características de PlayFab requiere una configuración mínima
  • Mejor compatibilidad multiusuario: el SDK unificado maneja varios usuarios locales de manera más eficaz
  • Modelo de entidad coherente: el mismo enfoque de autenticación en todos los servicios

Preparación para el futuro

  • Desarrollo activo: v2 es la versión mantenida activamente
  • Nuevas características: las futuras capacidades de PlayFab se dirigirán al SDK unificado
  • Soporte a largo plazo: los SDK v1 quedarán en desuso con el tiempo

Pasos siguientes

  1. Actualice la estructura del proyecto: migre al diseño del SDK unificado
  2. Refactorice la autenticación: implemente el enfoque basado en identificadores de entidad
  3. Pruebe exhaustivamente: valide que toda la funcionalidad de PlayFab funcione correctamente
  4. Limpie el código: quite las soluciones alternativas en desuso de v1 y la administración manual de tokens
  5. Supervise el rendimiento: asegúrese de que la migración no introduzca problemas de rendimiento
Para obtener ayuda adicional, consulte la documentación y los ejemplos del SDK unificado de PlayFab para su plataforma específica.
Última modificación el 28 de agosto de 2026