Skip to content

Android アプリケーション - アップグレード戦略の取得

API 説明:クライアントのバージョン番号に基づいて、対応するアップグレード戦略を取得します

📮 リクエスト情報

リクエスト URL

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

リクエストヘッダー

パラメータ名必須説明
X-TimestampYesstring2025-02-17T10:34:55+08:00RFC3339 形式のリクエスト時間
X-NonceYesstringfc812cc0b9b51e8c一意のランダム文字列(少なくとも 16 文字)
X-AccessKeyYesstringmui2W50H1j-OC4xD6PgQagAccessKey シークレットキー
X-SignatureYesstring3603437250c2df51fc46426ac79d8995リクエスト署名 署名ルール
Content-TypeYesstringapplication/json

🔐 リプレイ攻撃防止メカニズム

  1. サーバーは、サーバー時間とのタイムスタンプの差が ±5 分を超えないことを検証します
  2. サーバーは、Nonce 値が既に存在するかどうかを確認します(重複リクエストを防止するため)

リクエストボディ

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

リクエストボディパラメータ説明

パラメータ名必須説明
apkKeyYesstringisVZBUvkFhv6oHxk_X-D0QAndroid アプリケーションの一意の識別子
versionCodeYesint1クライアントのバージョンコード
appointVersionCodeNoint0希望するアップグレードバージョンコード、0 または未指定は最新バージョンを要求
devModelKeyNostringstv1デバイスモデルの一意の識別子
devKeyNostringLOYlLXNy7wデバイスの一意の識別子(MAC アドレスを一意の識別子として使用できます)
patchAlgoNoint0アップグレードアルゴリズム: 0: フルアップグレード; 1: HDiffPatch アルゴリズム

📮 レスポンス情報

成功レスポンスボディ

json
{
  "code": 200,
  "msg": "新しいバージョンを取得しました",
  "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": "プロンプトコンテンツ"
  }
}

レスポンスボディパラメータ説明

パラメータ名説明
apkKeystringisVZBUvkFhv6oHxk_X-D0QAndroid アプリケーションの一意の識別子
packageNamestringcom.a.cAndroid アプリケーションのパッケージ名
versionNamestringv1バージョン名
versionCodeint1バージョンコード
urlPathstringhttp://file.com/2.apkファイルダウンロードアドレス
urlFileSizeint7213ファイルサイズ(バイト)
urlFileMd5string36ee2a36b5d20d1008507d253423eea7ファイルの MD5 ハッシュ
patchAlgoint0アップグレードアルゴリズム: 0: フルアップグレード; 1: HDiffPatch アルゴリズム
patchUrlPathstringhttp://file.com/1-2.patchパッチファイルのダウンロードアドレス
patchUrlFileSizeint7213パッチファイルサイズ(バイト)
patchUrlFileMd5string36ee2a36b5d20d1008507d253423eea7パッチファイルの MD5 ハッシュ
upgradeTypeint1アップグレード方法: 1: プロンプトアップグレード; 2: サイレントアップグレード; 3: 強制アップグレード
promptUpgradeContentstringプロンプトコンテンツプロンプトアップグレード説明コンテンツ

典型的なエラーレスポンスボディ

json
{
  "code": 404001,
  "msg": "利用可能なバージョンを取得できません",
  "docs": "対応するアプリケーションバージョンが見つかりません。システムに正しく作成されているか確認してください。ドキュメントを参照してください:https://upgrade.toolsetlink.com/ja/upgrade/recommend/apk/app-version.html",
  "data": null
}

📊 ステータスコード

HTTP ステータスコードコードシナリオ説明解決策
2000リクエスト成功、既に最新バージョンです
200200リクエスト成功、バージョンアップグレード戦略を取得
400400001無効なリクエスト
400400002パラメータが不足しています
400400003無効なパラメータ
400400004無効なヘッダー
400400005無効なボディ
401401001認証に失敗しました
401401002署名検証に失敗しました
404404001リソースが見つかりません
404404002クエリレコードが見つかりません
404404003処理方法が見つかりません
404404004リクエストが見つかりません
429429001アプリケーションタスク戦略リクエストの流量制限現在のアップグレードタスクのリクエスト流量制限に達しました、後で再試行してください。
500500001サーバー内部エラーお問い合わせください お問い合わせ
500500002サーバー内部データ検証に失敗しましたお問い合わせください お問い合わせ

toolsetlink@163.com