Códigos de error del SDK MA para iOS
Definición de los códigos de error del cliente
Este documento se aplica al SDK MTMA independiente v5.5.0 y posteriores.
| Code | Descripción | Detalles |
|---|---|---|
| 0 | Solicitud correcta | La solicitud a la interfaz se ha completado correctamente |
| -1 | Solicitud fallida | Error de red, formato de respuesta incorrecto, MA deshabilitado en la configuración de inicialización u otro error desconocido |
| -2 | Solicitud fallida | No se ha llamado a start:, MTMA aún no se ha inicializado correctamente o la MA AppKey, el proyecto o la identidad han cambiado antes de ejecutar una solicitud en cola |
| -3 | Configuración no válida | Fallo de validación de parámetros, por ejemplo, una MA AppKey que no consta de 24 letras o dígitos, o ningún identificador utilizable tras la limpieza en identifyAccount: |
| -4 | Proyecto cerrado | Una interfaz durante la ejecución detecta que MA está deshabilitado o el servidor devuelve un error de proyecto cerrado; para MA deshabilitado en la configuración de inicialización, consulte -1 |
| -5 | Reservado para versiones anteriores | En versiones anteriores indicaba que AppPush no se había registrado correctamente; MTMA independiente ya no utiliza este código |
| -6 | Cambio de proyecto | Se ha cambiado de proyecto; vuelva a llamar a start: para inicializar |
| -7 | Solicitud en curso | Una interfaz sin soporte de cola ya tiene una solicitud en ejecución. Las llamadas válidas a start: no devuelven este código porque haya otra inicialización en curso; las solicitudes de canales Push de terceros se ponen en cola en orden |
Códigos de negocio del servidor
La tabla anterior contiene los códigos de error generados por el SDK. Si una operación de negocio falla en el servidor, el SDK devuelve el código y el mensaje correspondientes; por ello, los callbacks pueden incluir un code positivo. Los códigos específicos solo sirven para diagnóstico y no se garantiza su estabilidad entre versiones. No base ramas de lógica de negocio en ellos.
Evalúe la inicialización mediante MTMAInitResult.isSuccess; para las demás interfaces, code=0 indica que la solicitud ha tenido éxito. Ante un fallo inesperado, proporcione al soporte técnico los valores originales de code y message.
- En
identifyAccount:,code=0no significa que todos los identificadores se hayan establecido correctamente. Consulte Establecer identificadores de usuario. - Si una propiedad object_array no está definida en el servidor, las operaciones sobre elementos pueden devolver
code=0sin realizar cambios. Consulte otros casos sin cambios en Establecer propiedades del usuario y confirme el resultado real en la consola de MA o en las propiedades del usuario en el servidor.
| Escenario | code del callback | message del callback |
|---|---|---|
Fallo de negocio del servidor (HTTP 4xx/5xx, cuerpo de respuesta JSON válido con un code numérico) |
Valor original de code del servidor |
Texto original de msg/message del servidor |
| Error de red o imposibilidad de extraer el código de negocio del cuerpo de respuesta | -1 |
Mensaje fijo del SDK |
Proyecto cerrado / cambio de proyecto (HTTP 400 + 40001/40002) |
-4 / -6 |
Consulte la tabla anterior |
Apéndice: códigos de negocio habituales del servidor
Los siguientes valores son solo referencias de diagnóstico; no se garantiza que permanezcan estables entre versiones del SDK o del servidor:
| Code | Significado |
|---|---|
| 55004 | Parámetro de negocio no válido: por ejemplo, Bundle Identifier de la aplicación no vinculado o distinto al de la fuente de datos de MA, AppKey del canal sin correspondencia en el proyecto actual o channelId inexistente en ese proyecto; consulte message para conocer la causa concreta |
| 55108 | EUID no válido; por ejemplo, el EUID y el MA RID no pertenecen al mismo usuario de MA |
| 55110 | Solicitudes demasiado frecuentes; por ejemplo, se está vinculando el mismo AppPush RID de forma concurrente. Puede reintentarlo más tarde |
| 55000 | Error del sistema del servidor |
Resultados por identificador de usuario
Estos resultados incluyen la validación local del SDK y las respuestas del servidor. Consulte las reglas de procesamiento de campos en Clase MTMAUserID:
| Code | Significado |
|---|---|
| 0 | El identificador de usuario se ha procesado correctamente |
| 3001 | El valor del identificador de usuario no puede estar vacío (código de referencia del servidor; en esta versión del SDK, los valores vacíos de los cuatro identificadores públicos se consideran no proporcionados y no generan un 3001 por campo) |
| 3002 | El identificador de usuario no está definido en el proyecto actual |
| 3003 | El valor del identificador de usuario supera la longitud permitida |
| 3013 | El tipo o formato del valor del identificador de usuario no es válido, incluidos los tipos distintos de NSString |










