Cocos Creator 3.x ホット アップデート

序文: ゲームのホット アップデートは基本的な要件ですが、幸いなことに、cocos-creator が解決策を用意してくれました. U3D のホット アップデート ソリューションと比較して、非常に使いやすいです! 、細部にあまり注意を払うことなく

この記事ではcocos-creatorバージョン  3.5.2を使用しています

 

公式ドキュメント: Hot Update サンプル チュートリアル Cocos Creator https://docs.cocos.com/creator/3.5/manual/zh/advanced-topics/hot-update.html

官方デモ:mirrors_cocos-creator/tutorial-hot-update - Gitee.com https://gitee.com/mirrors_cocos-creator/tutorial-hot-update/tree/master

extensions  フォルダー内のスクリプト: 主  に、ビルドの完了後に対応するビルド サブディレクトリ内の main.js にリソース パス ロジックを追加するために使用されます。つまり、更新されたリソース パスを見つけるために使用されます

  

実際、これは即時実行機能であり、参照されたパスをそれに追加します

  version_generator.js  スクリプトは、作成したリソースをハッシュして署名するために使用され、最後に、   リソースをダウンロードして更新するかどうかを比較するためのproject.manifestおよびversion.manifestファイルを生成します。

project.manifest の内容は大まかに以下の通りです: リソースファイルのハッシュ値ファイルサイズとファイル一覧を記録します

  version.manifest ファイルの主な機能は、現在のリソース 1.0.3 のバージョン情報を記録することです。

アプリ側でアップデートを確認する必要がある場合は、サーバーとローカルのversion.manifestファイルを比較します. バージョンが同じ場合はスキップされます. そうでない場合は  、サーバーのproject.manifest  とローカルのproject.mainfestが比較されます.比較して、ダウンロードする必要があるファイルを見つけます。➤ ➤ ➤ ➤   

>>>>>>>更新されていない場合は、プロジェクト パスの assets ディレクトリに version.manifest および project.mainfestファイルが追加されていることがわかりますので、  project.manifest および version.manifest ファイルをプロジェクト アセット パス; そうでない場合、最初の更新が見つからない場合、テキストをサーバーと比較すると  エラーになります。!

ここでは基本的に、さまざまなファイルとスクリプトの機能について説明します。さっそく始めましょう。

➥ プロジェクトをビルドしてアプリを公開する

目標: 後のホット アップデート リソース用の親パッケージをビルドする

ページ:

リリース ページで登録を変更します。残りはデフォルトに設定できます。[ビルド] をクリックします。

 プロジェクト ルートで実行: version_generator ファイル

 

node version_generator.js -v 1.0.0 -u http://192.168.10.88:8080/remote-assets/ -s build/android\assets -d remote-assets/
  •  -v はリソースのバージョンを指定します
  •  -u サーバー リソース パスを設定します
  •  -s は、ビルド プロジェクトによって生成されたリソース ファイルへのパスを指定します (リソースのマニフェストを生成します) 。
  •  -d project.manifest と version.manifest のファイル パスを生成し、それらをプロジェクト ルート ディレクトリの remote-assets ディレクトリに一時的に配置します。

  

実行後: remote-assets フォルダーにさらに 2 つのファイルがあります。

 これは親パッケージであるため、これら 2 つのファイルをプロジェクト ルート ディレクトリのアセット パスにコピーする必要があります。( Demo に付属する 2 つのファイルを置き換えます。これら 2 つのファイルの構成情報は使用できません)

備考:ビルドしたばかりのプロジェクトの  project.manifest version.manifest ファイルが正しくない (デモ プロジェクトのファイル サーバー アドレス) か、利用できない (新しいプロジェクトではない)ため、プロジェクトを含むリソースをビルドする必要があります。マニフェスト version.manifest ビルド ファイルをもう一度。

Android Studio は、ビルドした Android プロジェクトを実行します。!

もう少し: ローカル エリア ネットワークでテストしたので、http 要求を使用しました; Android 7.0 以降では、アクセスを継続するには追加の構成が必要です。

私たちの電話はすでに動いています:

➥ ページを修正し、更新が必要なリソースを作成する

Ⅰ:  UIにアニメーションを追加します:

プロジェクトを再構築します。

Ⅲ ビルドが完了したら、project.manifestversion.manifest を再生成し、*バージョン番号に 1 を追加します。

node version_generator.js -v 1.0.1 -u http://192.168.10.88:8080/remote-assets/ -s build/android\assets -d remote-assets/

デスクトップにremote-assetsという名前の新しいフォルダーを作成します (場所は、プロジェクトのルート ディレクトリがない場合はオプションです) ; 生成されたばかりの   project.manifestversion.manifestをコピーし、プロジェクト リソース パスを構築するすべてのアセット ファイルをそこにコピーします。サーバーに置きます。

おおよそ次のとおりです。

 次に、コンテナーを使用して実行します。ngixn iis を使用できます。ここで使用するのは、live-server です。  ブラウザーでアクセスできる場合は、成功します。

 

* この時点で Android Studio を再度実行しないでください。もう一度実行すると、アプリに最新のリソースが読み込まれます。アプリは直接開きます。

➥ アプリを実行してリソースを更新する

この時点で Android Studio を再度実行しないでください 。再度実行すると、アプリに最新のリソースが読み込まれます。

アプリを直接開きます。

 

リソースを更新して再起動すると、新しく追加されたアニメーションが既に再生されています! あなたは終わった!

おすすめ

転載: blog.csdn.net/nicepainkiller/article/details/126427322