Unity技術摘錄 獲取熱更新資源檔案的MD5碼

2021-08-17 06:27:42 字數 663 閱讀 8659

【參考原文】河樂不為-unity3d 學習筆記7 —— 獲取熱更新資源檔案的md5碼

在熱更新時通過檔案md5碼比對來判斷檔案是否更新,假如md5碼不一致則可以判定檔案發生了變化,所以需要進行更新。因此,需要為那些能夠進行熱更新的檔案生成對應的md5碼,每個檔案都對應唯一的乙個md5碼。

讀取檔案流

讀取檔案流中的位元組資料

通過md5介面生成md5碼(獲得的是乙個hash位元組陣列)

將步驟3獲得的hash位元組陣列轉換為字元創

關鍵**:

public

static

string

getfilehash(string filepath)

return filemd5;

} catch (filenotfoundexception e)

}

呼叫的時候通過填寫制定檔案的完整目錄,即可獲得對應檔案的md5碼:

string md5 = getfilehash("e:\\mypro\\cubetest.unity3d");
通過請求伺服器獲取到伺服器的md5碼配置檔案

獲取本地的md5碼配置檔案

.逐個比對每個檔案的md5碼

統計md5碼不一致的檔案列表

ios之熱更新技術

ios的審核很耗時 對於線上的一些小bug可以不用提交新版本就可以解決的方案 使用熱更新技術 熱更新的概念 首先說一下jspatch實現的內部原理 jspatch能做到通過js呼叫和改寫oc方法最根本的原因是 objective c 是動態語言,oc上所有方法的呼叫 類的生成都通過 objectiv...

Unity3D熱更新全書 PageZero

unity3d熱更新全書 何謂熱更新,為何熱更新,如何熱更新 這一篇是寫給對熱更新完全沒概念的人 unity3d熱更新全書 資源載入 一 從assetbundle說起 這一篇是 使用assetbundle來做資源更新的問題,希望能讓更多人理解assetbundle是有害的 unity3d熱更新全書 ...

Unity中Shader是否可以熱更新的測試

在unity的資源中,shader是比較特殊的一類。主要有下面幾個疑問 1.shader算是 並且需要編譯。那麼是否可以熱更新?2.ab中載入進來的shader是否可以通過shader.find 名稱 來索引?3.在使用shader feature關鍵字後,build時忽略的變種是否要在執行時編譯?...