Skip to content

Obter Estratégia de Upgrade do Aplicativo Android

Descrição da Interface: Obter a estratégia de upgrade correspondente com base no número de versão do cliente

📮Informações da Solicitação

URL da Solicitação

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

Cabeçalhos da Solicitação

Nome do ParâmetroObrigatórioTipoValor de ExemploDescrição
X-TimestampSimstring2025-02-17T10:34:55+08:00Hora da solicitação no formato RFC3339
X-NonceSimstringfc812cc0b9b51e8cString aleatória única (pelo menos 16 caracteres)
X-AccessKeySimstringmui2W50H1j-OC4xD6PgQagChave secreta AccessKey
X-SignatureSimstring3603437250c2df51fc46426ac79d8995Assinatura da solicitação Regras de Assinatura
Content-TypeSimstringapplication/json

🔐 Mecanismo Anti-Ataque de Repetição

  1. O servidor verifica que a diferença de timestamp em relação ao tempo do servidor não excede ±5 minutos
  2. O servidor verifica se o valor Nonce já existe (para evitar solicitações duplicadas)

Corpo da Solicitação

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

Descrição dos Parâmetros do Corpo da Solicitação

Nome do ParâmetroObrigatórioTipoValor de ExemploDescrição
apkKeySimstringisVZBUvkFhv6oHxk_X-D0QIdentificador único do aplicativo Android
versionCodeSimint1Código de versão do cliente
appointVersionCodeNãoint0Código de versão de upgrade esperado, 0 ou não informado significa solicitar a versão mais recente
devModelKeyNãostringstv1Identificador único do modelo do dispositivo
devKeyNãostringLOYlLXNy7wIdentificador único do dispositivo (pode usar MAC como identificador único)
patchAlgoNãoint0Algoritmo de upgrade: 0: Upgrade completo; 1: Algoritmo HDiffPatch

📮Informações da Resposta

Corpo da Resposta de Sucesso

json
{
  "code": 200,
  "msg": "Nova versão obtida",
  "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": "Conteúdo do prompt"
  }
}

Descrição dos Parâmetros do Corpo da Resposta

Nome do ParâmetroTipoValor de ExemploDescrição
apkKeystringisVZBUvkFhv6oHxk_X-D0QIdentificador único do aplicativo Android
packageNamestringcom.a.cNome do pacote do aplicativo Android
versionNamestringv1Nome da versão
versionCodeint1Código da versão
urlPathstringhttp://file.com/2.apkEndereço de download do arquivo
urlFileSizeint7213Tamanho do arquivo (bytes)
urlFileMd5string36ee2a36b5d20d1008507d253423eea7MD5 do arquivo
patchAlgoint0Algoritmo de upgrade: 0: Upgrade completo; 1: Algoritmo HDiffPatch
patchUrlPathstringhttp://file.com/1-2.patchEndereço de download do arquivo de patch
patchUrlFileSizeint7213Tamanho do arquivo de patch (bytes)
patchUrlFileMd5string36ee2a36b5d20d1008507d253423eea7MD5 do arquivo de patch
upgradeTypeint1Método de upgrade: 1: Upgrade com prompt; 2: Upgrade silencioso; 3: Upgrade forçado
promptUpgradeContentstringConteúdo do promptConteúdo da descrição do upgrade com prompt

Corpo da Resposta de Erro Típica

json
{
  "code": 404001,
  "msg": "Nenhuma versão disponível obtida",
  "docs": "Nenhuma versão correspondente do aplicativo encontrada. Por favor, confirme se ela foi criada corretamente no sistema. Consulte a documentação: https://upgrade.toolsetlink.com/pt/upgrade/recommend/apk/app-version.html",
  "data": null
}

📊Códigos de Status

Código de status HTTPcodeDescrição do CenárioSolução
2000Solicitação bem-sucedida, já é a versão mais recente
200200Solicitação bem-sucedida, estratégia de upgrade de versão obtida
400400001Solicitação ilegal
400400002Parâmetros ausentes
400400003Parâmetros ilegais
400400004Cabeçalho ilegal
400400005Corpo ilegal
401401001Falha na autenticação
401401002Falha na verificação de assinatura
404404001Recurso não encontrado
404404002Registro de consulta não encontrado
404404003Método de processamento não encontrado
404404004Solicitação não encontrada
429429001Limite de controle de fluxo de solicitação de estratégia de tarefa do aplicativoA estratégia de controle de fluxo de solicitação para a tarefa de upgrade atual atingiu o limite, por favor, tente novamente mais tarde.
500500001Erro interno do servidorEntre em contato Fale Conosco
500500002Falha na validação de dados interno do servidorEntre em contato Fale Conosco

toolsetlink@163.com