Skip to content

Obtener Estrategia de Actualización de Aplicación Android

Descripción de la Interfaz: Obtener la estrategia de actualización correspondiente basada en el número de versión del cliente

📮Información de Solicitud

URL de Solicitud

POST https://api.upgrade.toolsetlink.com/v1/apk/upgrade

Encabezados de Solicitud

Nombre del ParámetroRequeridoTipoValor de EjemploDescripción
X-Timestampstring2025-02-17T10:34:55+08:00Hora de solicitud en formato RFC3339
X-Noncestringfc812cc0b9b51e8cCadena aleatoria única (al menos 16 caracteres)
X-AccessKeystringmui2W50H1j-OC4xD6PgQagClave secreta AccessKey
X-Signaturestring3603437250c2df51fc46426ac79d8995Firma de solicitud Reglas de Firma
Content-Typestringapplication/json

🔐 Mecanismo de Prevención de Ataques de Replay

  1. El servidor verifica que la diferencia de timestamp con la hora del servidor no exceda ±5 minutos
  2. El servidor verifica si el valor Nonce ya existe (para prevenir solicitudes duplicadas)

Cuerpo de la Solicitud

json
{
  "apkKey": "isVZBUvkFhv6oHxk_X-D0Q",
  "versionCode": 1,
  "appointVersionCode": 0,
  "devModelKey": "stv1",
  "devKey": "LOYlLXNy7w",
  "patchAlgo": 0
}

Descripción de Parámetros del Cuerpo de la Solicitud

Nombre del ParámetroRequeridoTipoValor de EjemploDescripción
apkKeystringisVZBUvkFhv6oHxk_X-D0QIdentificador único de la aplicación Android
versionCodeint1Código de versión del cliente
appointVersionCodeNoint0Código de versión de actualización esperada, 0 o no pasado significa solicitar la versión más reciente
devModelKeyNostringstv1Identificador único del modelo de dispositivo
devKeyNostringLOYlLXNy7wIdentificador único del dispositivo (puede usar mac como identificador único)
patchAlgoNoint0Algoritmo de actualización: 0: Actualización completa; 1: Algoritmo HDiffPatch

📮Información de Respuesta

Cuerpo de Respuesta de Éxito

json
{
  "code": 200,
  "msg": "Versión nueva obtenida",
  "data": {
    "apkKey": "isVZBUvkFhv6oHxk_X-D0Q",
    "packageName": "com.a.c",
    "versionName": "v2",
    "versionCode": 2,
    "urlPath": "http://file.com/2.apk",
    "urlFileSize": 7213,
    "urlFileMd5": "36ee2a36b5d20d1008507d253423eea7",
    "patchAlgo": 0,
    "patchUrlPath": "http://file.com/1-2.patch",
    "patchUrlFileSize": 203,
    "patchUrlFileMd5": "36ee2a36b5d20d1008507d253423eea7",
    "upgradeType": 1,
    "promptUpgradeContent": "Contenido del aviso"
  }
}

Descripción de Parámetros del Cuerpo de la Respuesta

Nombre del ParámetroTipoValor de EjemploDescripción
apkKeystringisVZBUvkFhv6oHxk_X-D0QIdentificador único de la aplicación Android
packageNamestringcom.a.cNombre del paquete de la aplicación Android
versionNamestringv1Nombre de la versión
versionCodeint1Código de versión
urlPathstringhttp://file.com/2.apkDirección de descarga del archivo
urlFileSizeint7213Tamaño del archivo (bytes)
urlFileMd5string36ee2a36b5d20d1008507d253423eea7MD5 del archivo
patchAlgoint0Algoritmo de actualización: 0: Actualización completa; 1: Algoritmo HDiffPatch
patchUrlPathstringhttp://file.com/1-2.patchDirección de descarga del archivo de parche
patchUrlFileSizeint7213Tamaño del archivo de parche (bytes)
patchUrlFileMd5string36ee2a36b5d20d1008507d253423eea7MD5 del archivo de parche
upgradeTypeint1Método de actualización: 1: Actualización con aviso; 2: Actualización silenciosa; 3: Actualización forzada
promptUpgradeContentstringContenido del avisoContenido de descripción de actualización con aviso

Cuerpo de Respuesta de Error Típica

json
{
  "code": 404001,
  "msg": "No se obtuvo versión disponible",
  "docs": "No se encontró la versión correspondiente de la aplicación. Por favor confirma si se ha creado correctamente en el sistema. Por favor consulta la documentación: https://upgrade.toolsetlink.com/es/upgrade/recommend/apk/app-version.html",
  "data": null
}

📊Códigos de Estado

Código de Estado HTTPcodeDescripción del EscenarioSolución
2000Solicitud exitosa, ya es la versión más reciente
200200Solicitud exitosa, obtuvo estrategia de actualización de versión
400400001Solicitud ilegal
400400002Parámetros faltantes
400400003Parámetros ilegales
400400004Encabezado ilegal
400400005Cuerpo ilegal
401401001Autenticación fallida
401401002Verificación de firma fallida
404404001Recurso no encontrado
404404002Registro de consulta no encontrado
404404003Método de procesamiento no encontrado
404404004Solicitud no encontrada
429429001Límite de control de flujo de solicitud de estrategia de tarea de aplicaciónLa estrategia de control de flujo de solicitud para la tarea de actualización actual ha alcanzado el límite, por favor inténtelo de nuevo más tarde.
500500001Error interno del servidorPor favor contáctenos Contacto
500500002Validación de datos interna del servidor fallidaPor favor contáctenos Contacto

toolsetlink@163.com