cocos2dx中有一个热更新类AssetsManagerEx,用这个类实现热更功能时需要有两个文件,project.manifest以及version.manifest。这里主要是project.manifest文件,里面需要存有资源文件和代码文件的md5值,通过md5的不同得出差异文件然后下载。
这里通过python来实现这两个文件。
创建一个python文件generateManifest.py。
#coding:utf-8
import os
import sys
import json
import hashlib
import subprocess
import getpass
username = getpass.getuser()
# 改变当前工作目录
os.chdir('/Users/' + username + '/Documents/client/MyProj/')
assetsDir = {
#MyProj文件夹下需要进行热跟的文件夹
"searchDir" : ["src", "res"],
#需要忽略的文件夹
"ignorDir" : ["cocos", "framework", ".svn"],
#需要忽略的文件
"ignorFile":[".DS_Store"],
}
versionConfigFile = "res/config/version_info.json" #版本信息的配置文件路径
versionManifestPath = "res/version/version.manifest" #由此脚本生成的version.manifest文件路径
projectManifestPath = "res/version/project.manifest" #由此脚本生成的project.manifest文件路径
# projectManifestPath = "/Users/ximi/Documents/client/MyProj/res/version/project.manifest" #由此脚本生成的project.manifest文件路径(mac机)
class SearchFile:
def __init__(self):<