亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

Unity HybridCLR熱更新實戰(zhàn):原理、接入順序與真機排坑

Unity HybridCLR熱更新實戰(zhàn):原理、接入順序與真機排坑 我到現(xiàn)在都記得第一次線上事故的場景一個已經(jīng)過審上架的手游運營活動發(fā)獎勵的數(shù)值公式少取了一次隨機數(shù)玩家領到的獎勵高了兩倍。服務端立刻封住漏洞但已經(jīng)安裝的客戶端代碼是死的發(fā)新版要走渠道審核少則一天多則一周那幾天項目組每個人臉上都寫著焦慮。那次之后我們整個團隊把“代碼熱更新”從“以后再說”提到了“下周必須驗證”的優(yōu)先級。最后選型、驗證、接入的方案就是今天這篇要聊的 Unity HybridCLR 熱更新。如果只用一句話介紹HybridCLR 是一個基于 IL2CPP 的 C# 熱更新方案它能讓你的 Unity 項目在不重新打包上架、玩家不重新下載安裝包的情況下通過加載一段新的 C# 程序集來更新游戲邏輯。這篇文章是我自己從零把一個 Demo 工程接入 HybridCLR再逐步推進到真實項目的完整記錄。重點不是重復官方文檔而是告訴你接入順序、依賴方向、AOT 泛型問題這些文檔里不容易一次講透的東西以及我踩過的坑長什么樣。如果你是想評估熱更新方案的技術負責人、正在給老項目接熱更的 Unity 客戶端同學或者剛被分配要驗證 HybridCLR 可行性的新手這篇應該能幫你省下不少試錯時間。讀完你應該能知道它和 Lua 熱更、和 IDE 里的熱重載到底什么關系接入前工程要做什么體檢真機上跑通一個最小熱更工程需要哪幾步以及第一輪真機崩潰該怎么查。1. 為什么是 HybridCLR而不是 Lua 或者熱重載1.1 IL2CPP 把代碼焊死在哪里要理解 HybridCLR 的價值先得知道 Unity 的 IL2CPP 到底做了什么。在沒有 IL2CPP 的 Mono 時代C# 代碼會被編譯成 IL運行時由 Mono 虛擬機解釋或 JIT 編譯執(zhí)行。那個年代想在 iOS 上做熱更新很麻煩因為蘋果明確禁止應用在自己的沙盒里動態(tài)生成可執(zhí)行代碼JIT 這條路在 iOS 上基本是堵死的。IL2CPP 是把 C# 先編譯成 IL再在構建階段把 IL 轉成 C最后隨原生工程一起編譯成目標平臺的機器碼。好處是啟動快、性能好、代碼不容易被直接反編譯成原始 C#壞處也藏在這里所有 C# 邏輯都在編譯期被翻譯并“焊死”進了原生二進制運行時已經(jīng)沒有一套能把新 IL 編譯成機器碼的機制了。這就好比你把菜譜都刻成了石碑讀者只能照著石碑做菜現(xiàn)在你拿到一張新菜譜卻沒有火源也沒有翻譯想按新菜譜做菜根本無從下手。HybridCLR 做的是在 IL2CPP 旁邊補了一個“解釋執(zhí)行器”讓新拿到的 C# 程序集也就是熱更 dll里的 IL 字節(jié)碼不經(jīng)過 JIT 也能被逐條解釋執(zhí)行。1.2 它和 xLua、ILRuntime 的本質差異很多團隊第一次聊熱更新聽到的往往是 xLua、tolua或者純 C# 的 ILRuntime。這里我直接按實際感受做個比較。Lua 方案的核心是“換語言”業(yè)務邏輯不寫在 C# 里而是寫 Lua運行時由 C# 側的虛擬機解釋執(zhí)行。好處是生態(tài)成熟、很多老項目都在用代價是整個項目的核心玩法可能要從 C# 平移成 Lua維護一套雙語言邏輯團隊里每個人都要會 Lua出問題時要跨語言查堆棧代碼補全和重構也不夠舒服。ILRuntime 是純 C# 的解釋器方案不需要換語言但它和 Unity 的 AOT 世界之間隔了一層自己的運行時對某些 C# 特性的支持以及對 Unity 引擎調(diào)用、泛型、值類型結構的處理需要開發(fā)者額外注意。性能和兼容性一直在進步但遇到冷門邊界總有“為什么這里不行”的疑惑。HybridCLR 選擇的是另一條路線盡可能貼近原生 CLR 的實現(xiàn)方式在 IL2CPP 的 AOT 基礎上加一個解釋器模塊并且用“補充元數(shù)據(jù)”的方式解決 AOT 泛型缺失的經(jīng)典問題。用下來最直觀的感受是它不是讓你把邏輯翻譯成另一種語言而是讓熱更 dll 里的 C# 代碼自己跑起來和主工程的 C# 代碼寫法差別不大。對比項Lua 系方案ILRuntimeHybridCLR業(yè)務語言Lua C#C#C#與 IL2CPP 關系獨立虛擬機獨立解釋器基于 IL2CPP 補充解釋能力學習成本需要掌握 Lua較低但邊界概念多較低重點是理解 AOT 與熱更分界泛型等邊界問題不受 IL2CPP 泛型影響有自己的處理通過補充元數(shù)據(jù)解決大多數(shù)社區(qū)活躍度高但偏向舊項目中高近幾年增長很快需要客觀說的是HybridCLR 本質上是修改了 Unity 的 IL2CPP 構建鏈路Unity 版本升級、IL2CPP 內(nèi)部實現(xiàn)調(diào)整都有可能影響它。所以它不是一個“裝一次永遠不用管”的方案每次 Unity 升級或 HybridCLR 升級都要做回歸驗證。這點后面章節(jié)會細說。1.3 先理清“熱更新”和“熱重載”不是一回事熱搜詞里出現(xiàn)了不少和熱更新相關的詞比如 Flutter 熱重載、IDEA 修改代碼熱更新、Nacos 配置熱更新。這些詞經(jīng)常被混在一起但它們解決的問題完全不同。Flutter 的熱重載本質是開發(fā)期工具改完代碼按一下 R開發(fā)進程把新的 widget 樹推給正在運行的調(diào)試 App幫開發(fā)者快速看 UI 效果。它不面向線上玩家代碼改動只在開發(fā)環(huán)境里生效。IDEA 里修改 Java 代碼后的熱更新是讓本地開發(fā)服務器不用重啟就能加載新類屬于開發(fā)效率工具的范圍。Nacos 配置熱更新更新的是配置項不是程序邏輯本身。而 Unity 項目里說的“代碼熱更新”指的是已經(jīng)安裝到玩家手機上的 App在不發(fā)新包的前提下從服務器拉取新的 C# 程序集并在本地執(zhí)行新邏輯。這是玩家可見的能力直接關系到線上事故的處理速度和上面那些開發(fā)期工具完全不是一個維度。所以有些同學問“我項目里用 IDE 熱重載很順是不是就不用 HybridCLR 了”答案顯然是否定的。2. 接入前先給工程“體檢”程序集、依賴方向、泛型用法2.1 依賴方向熱更代碼能引用什么不能引用什么接入 HybridCLR 最容易犯的錯是直接拿一個已經(jīng)寫了兩三年的老工程把所有代碼都掃進熱更程序集然后開始打包。正確的第一步是給工程劃分程序集邊界。Unity 項目里用 asmdef 把代碼分成多個程序集主工程里有一套專門給熱更代碼用的接口和公共代碼熱更代碼所在的程序集可以引用主工程的公共程序集但主工程的 AOT 代碼絕對不能反過來引用熱更程序集里的類型。一旦主工程靜態(tài)引用了熱更代碼里的類打 IL2CPP 包時就會把熱更代碼一起編進去后續(xù)想替換邏輯就會非常別扭。我在項目里習慣的分層是這樣的AOT 主程序集啟動流程、SDK 對接、資源管理、渲染相關、游戲的底層框架。AOT 公共接口層純接口和 DTO 定義比如戰(zhàn)斗結算接口、活動模板接口供熱更代碼實現(xiàn)或調(diào)用。熱更程序集賽季玩法、活動界面、數(shù)值表現(xiàn)、任務系統(tǒng)這類需要頻繁調(diào)整的邏輯。依賴方向是熱更層可以引用 AOT 公共接口層AOT 公共接口層不能引用熱更層。因為熱更層是運行時才被加載的AOT 側的代碼在編譯期根本不知道它的存在兩者之間只能靠接口或反射溝通。2.2 重點檢查一遍泛型使用習慣體檢時另一個重點是泛型。C# 泛型在 AOT 編譯下有個天然矛盾IL2CPP 編譯器在打包時只會為主工程代碼里“顯式出現(xiàn)過的泛型實例化”生成機器碼。如果熱更代碼運行時突然出現(xiàn)一個 AOT 模塊里從未實例化過的泛型組合比如DictionaryMyStruct, intIL2CPP 那邊并沒有對應的目標代碼運行時就會報類似AOT generic method can not be instantiated的錯誤。HybridCLR 的解法是“補充元數(shù)據(jù) 解釋器兜底”。打包時項目會帶上 AOT 必需 dll比如 mscorlib、System、UnityEngine.CoreModule 這些的元數(shù)據(jù)運行時先加載這些元數(shù)據(jù)讓解釋器能夠自己解析泛型方法的 IL 并執(zhí)行而不是必須依賴 IL2CPP 現(xiàn)成的機器碼。這并不代表你可以完全無視泛型。我建議在接入前把項目里“值類型 泛型容器混用”的地方掃一遍。比如大量使用Listint、Dictionaryint, MyEnum、Dictionarylong, MyStruct尤其是這些結構體是活動邏輯里臨時定義的時候要格外留意。這里不是說不能用而是你要意識到這類代碼會觸發(fā) AOT 泛型補充機制線上報錯后排查成本會高一些。2.3 確認版本兼容與目標平臺體檢還包括兩個基礎問題項目用的 Unity 版本以及 Scripting Backend 是否已經(jīng)是 IL2CPP。HybridCLR 只支持 IL2CPPMono 后端不在討論范圍內(nèi)。Android 項目由于現(xiàn)在 Google Play 和國內(nèi)渠道對 Target API Level 的要求越來越高很多項目把target API level提到了 33、34、35這個過程中只要正常使用 IL2CPP 并勾選 ARM64不會和 HybridCLR 產(chǎn)生直接沖突。但如果是很老的項目一直跑在 ARMv7 或 Mono 上最好先把構建鏈路切干凈再談熱更。Unity 版本建議盡量用 LTS比如 2021.3 LTS、2022.3 LTS 或官方文檔當前明確支持的版本。HybridCLR 的發(fā)布節(jié)奏通常能跟上主流 LTS用非 LTS 版本容易遭遇兼容性盲區(qū)。安裝時下載的是focus-creative-games/hybridclr_unity這份 Unity 側工程代碼版本要和項目 Unity 版本匹配別隨手拉最新版就往老項目里塞。3. 真機跑通全流程一個最小可熱更工程的搭建記錄3.1 安裝包和 Installer 到底做了什么接入時首先通過 Unity Package Manager 用 Git URL 把 HybridCLR 的 Unity 包加到工程里。拉取成功后菜單欄會出現(xiàn) HybridCLR 相關的入口。接下來執(zhí)行的是 HybridCLR - Installer這一步會往工程里寫一些必要的代碼更關鍵的是它會修改本地的 IL2CPP把解釋器相關模塊合入 il2cpp 的構建鏈。也就是說它不只是往 Assets 里加幾個腳本還動到了 Unity 編輯器安裝目錄下的 il2cpp 相關文件。這里有兩個容易踩的點。第一Installer 執(zhí)行時如果 Unity 正在占用相關文件或者殺毒軟件攔截了對安裝目錄的修改安裝可能“假成功”。我遇到過安裝后 Generate 時各種詭異報錯重裝一次 HybridCLR 就好了。建議執(zhí)行完 Installer 后先做一次簡單的生成操作驗證而不是直接開始打大包。第二升級 Unity 小版本后最好重新執(zhí)行 Installer。IL2CPP 內(nèi)部文件結構會隨版本變化舊的補丁不一定還能用。我們項目從 Unity 2021.3.16 升到 2021.3.31 時因為漏了這一步打出來的包初始化階段直接崩潰排查了半天才發(fā)現(xiàn)是 installer 沒重跑。3.2 創(chuàng)建熱更程序集并在 Settings 里登記HybridCLR 需要知道哪些程序集要被當作熱更程序集處理。官方推薦用 asmdef 組織但不是把文件夾命名為 HotUpdate 就行而是在工程里建一個真正的 Assembly Definition。我的做法是在 Assets 下建兩個目錄Assets/Scripts/Main主工程邏輯里面放Main.asmdef。Assets/Scripts/HotUpdate熱更邏輯里面放HotUpdate.asmdef。由于 HotUpdate 需要引用 Main 里定義的類型和接口在HotUpdate.asmdef的 Assembly Definition References 里加上 Main反之 Main 里不要引用 HotUpdate。這樣主工程干凈熱更程序集可以隨意引用它依賴的 AOT 庫。創(chuàng)建好 asmdef 后打開菜單HybridCLR - Settings把 HotUpdate 加進熱更新程序集列表。Install 時官方腳本會自動生成一套默認配置里面通常已經(jīng)預設了 compile 用的 AOT 程序集列表和補充元數(shù)據(jù)列表。新工程用默認配置其實就能跑通不需要一開始就手動維護一堆列表。3.3 初始化的核心代碼補充元數(shù)據(jù)再加載熱更程序集接入代碼最核心的只有兩步先補充 AOT 元數(shù)據(jù)再Assembly.Load熱更 dll。補充元數(shù)據(jù)這一步是用HybridCLR.RuntimeApi.LoadMetadataForAOTAssembly把 AOT dll 的元數(shù)據(jù)喂給解釋器。注意每個 dll 要單獨調(diào)用一次不能把多個 dll 拼成一個 byte 數(shù)組一次性傳進去。這里直接放一份可運行的初始化思路using System; using System.Reflection; using HybridCLR; using UnityEngine; public static class HotfixBootstrap { // 假設這些 dll 都已經(jīng)被打進同一個 AssetBundle // 并且以 TextAsset 形式加載 private static readonly string[] AotDllNames { mscorlib.dll, System.dll, System.Core.dll, UnityEngine.CoreModule.dll, Main.dll, }; private const string HotUpdateDllName HotUpdate.dll; public static void Start() { try { LoadAotMetadata(); LoadHotUpdateAssembly(); } catch (Exception e) { Debug.LogError($[Hotfix] 熱更啟動失敗走 AOT 兜底邏輯. {e}); FallbackToAOT(); } } private static void LoadAotMetadata() { AssetBundle ab AssetBundle.LoadFromFile(GetBundlePath()); foreach (string dllName in AotDllNames) { TextAsset ta ab.LoadAssetTextAsset(dllName); if (ta null) { Debug.LogError($[Hotfix] 缺少 AOT 元數(shù)據(jù): {dllName}); continue; } // 補充元數(shù)據(jù)必須發(fā)生在熱更代碼調(diào)用相關 AOT 泛型之前 RuntimeApi.LoadMetadataForAOTAssembly(ta.bytes, HomologousImageMode.SuperSet); } ab.Unload(false); } private static void LoadHotUpdateAssembly() { AssetBundle ab AssetBundle.LoadFromFile(GetBundlePath()); TextAsset dll ab.LoadAssetTextAsset(HotUpdateDllName); Assembly hotUpdateAssembly Assembly.Load(dll.bytes); Type entry hotUpdateAssembly.GetType(HotUpdate.GameMain); if (entry null) { Debug.LogError([Hotfix] 熱更入口類型不存在); return; } MethodInfo start entry.GetMethod(StartEntry); start?.Invoke(null, null); ab.Unload(false); } private static string GetBundlePath() { // 首包資源在 StreamingAssets后續(xù)更新資源在 persistentDataPath // 這里根據(jù)項目策略自行切換 return Application.streamingAssetsPath /hotupdate; } private static void FallbackToAOT() { // 你原有的啟動邏輯 AOTMain.Start(); } }有幾個細節(jié)需要說明。HomologousImageMode.SuperSet是官方示例里很常用的模式意思是用包含超集信息的方式加載元數(shù)據(jù)對裁剪后的 dll 兼容性更好。如果你的 dll 完全沒裁剪可以用 Consistent 模式但項目一旦開了 Strip Engine Code經(jīng)常會出現(xiàn)某些類型被裁掉的情況所以用 SuperSet 在實際項目里更省心。補充元數(shù)據(jù)的順序一定要在加載熱更 dll 之前。你在熱更 dll 里寫的代碼可能用到了主工程的泛型方法解釋器在執(zhí)行時如果 AOT 側沒有現(xiàn)成函數(shù)實現(xiàn)就需要通過補充元數(shù)據(jù)去解析對應 IL。這個動作發(fā)生得越晚越容易在詭異的位置拋出異常。不要直接在主工程里靜態(tài)調(diào)用熱更程序集里的類。上面代碼用反射拿HotUpdate.GameMain再調(diào)方法是我推薦的最小實現(xiàn)。真實項目里可以把這個入口抽象成一個接口放到 AOT 公共層熱更代碼提供一個實現(xiàn)這樣主工程只需要按需求反射加載熱更程序集再轉換成約定接口去調(diào)用比純反射更舒服。3.4 從 Generate/All 到 Android 打包代碼寫好后HybridCLR 的構建流程不是直接點 Unity 的 Build Player而是先執(zhí)行HybridCLR - Generate/All。這一步會完成幾件事把熱更程序集編譯成 dll、掃描代碼生成必要的橋接代碼、生成 AOT 泛型補充列表。也就是說橋接代碼和泛型列表不是純手工維護的而是在 Generate 階段自動生成的。每次修改熱更代碼后如果你直接打包而忘了重新執(zhí)行 Generate/All很可能打出來的包運行后行為異常因為橋接信息沒有同步過來。命令行構建時也需要在打包前調(diào)用對應接口常見寫法是using HybridCLR.Editor.Commands; using UnityEditor; using UnityEditor.Build; public static class BuildEntry { public static void BuildAndroid() { PrebuildCommand.GenerateAll(); BuildPlayerOptions options new BuildPlayerOptions(); options.scenes new[] { Assets/Scenes/Main.unity }; options.locationPathName Build/Android/demo.apk; options.target BuildTarget.Android; options.options BuildOptions.None; BuildPipeline.BuildPlayer(options); } }真機驗證時Player Settings 里注意三點Scripting Backend 必須選 IL2CPPTarget Architecture 要勾選 ARM64很多中低端新機也已經(jīng)只有 64 位庫了至少你要保證包含 ARM64Strip Engine Code 可以暫時開著但首輪驗證如果出現(xiàn)異常建議先關掉一次對比排查確認是熱更鏈路問題還是裁剪問題。3.5 驗證一次真正的不重裝更新首包裝完后寫一個最簡單的熱更驗證入口在熱更程序集里做這樣一件事在屏幕中央顯示HotUpdate Version 1。裝到手機上確認顯示正確。然后把代碼里的版本號改成HotUpdate Version 2重新 Generate/All重新打 AssetBundle但不要重新打 APK。把新的 AB 放到下載源手機 App 啟動后下載新 AB再次加載時如果屏幕顯示Version 2說明熱更已經(jīng)跑通。這一步是整個接入的“成人禮”。只要這個鏈路通了后面要做的就是把下載、校驗、解壓、加載打磨成正式框架。我見過不少項目卡在“編輯器里改了代碼直接運行是新的但熱更鏈路沒通”核心原因就是忘了驗證從 AB 里加載的還是不是最新那版 dll。打包 AB 之前建議在 AB 文件名或 dll 里寫入版本號標識啟動時打印出來避免新舊資源混淆。4. 首包之后躲不開的坑元數(shù)據(jù)缺失、AOT 泛型與裁剪4.1 真機 MissingMethodException 的排查路徑能把 Demo 跑通只代表最小鏈路沒問題。真實項目的第一個坎往往出現(xiàn)在把一部分業(yè)務代碼挪進熱更程序集之后。我印象最深的一次報錯是 Android 真機進入某個界面直接拋ExecutionEngineException: Attempting to call method xxx for which no ahead of time (AOT) code was generated。在編輯器里怎么跑都沒事一上 IL2CPP 就崩。遇到這類錯誤第一反應不要只盯著報錯的那一行函數(shù)而是按照這個順序排查初始化代碼是否真的執(zhí)行了。真機上熱更初始化可能被 SDK 或啟動順序問題跳過先打日志確認LoadMetadataForAOTAssembly每個 dll 都成功了。元數(shù)據(jù)列表是否完整。報錯類型如果是System.Collections.Generic.Dictionaryint, MyStruct之類的 AOT 泛型先查 System.dll、mscorlib.dll 的元數(shù)據(jù)是否被加載。報錯方法是不是定義在熱更 dll 里但實現(xiàn)需要調(diào)用 AOT 側的泛型特化。這是最常見的情況。是否開啟了代碼裁剪裁剪把需要用到的元數(shù)據(jù)當成“無用數(shù)據(jù)”干掉了。不要一上來就想著用“AOT 泛型引用列表”硬補。先搞清楚報錯方法屬于哪個程序集、是不是泛型、泛型參數(shù)是不是值類型排查方向會清晰很多。4.2 AOT 泛型為什么不能靠事前祈禱規(guī)避AOT 泛型問題的本質是編譯期和運行期的信息不對等。IL2CPP 打包時只會把主工程代碼里實際引用過的泛型特化編譯出來。假如你有一個MyStruct只在熱更 dll 里出現(xiàn)了ListMyStruct而主工程從來沒有實例化過這個組合那么在 AOT 的機器碼里就真的沒有ListMyStruct的實現(xiàn)。程序運行時發(fā)現(xiàn)需要它無論怎么找都找不到現(xiàn)成代碼。HybridCLR 給出的路徑是你想不到那我們就在運行時讓解釋器去現(xiàn)讀 IL、現(xiàn)解釋執(zhí)行。所以補充元數(shù)據(jù)不只是湊個數(shù)它是給解釋器提供了“原料”。只要元數(shù)據(jù)里包含那個泛型方法的 IL解釋器就能自己把它跑起來不依賴 IL2CPP 現(xiàn)成機器碼。但在實際項目里我遇到過需要補充的元數(shù)據(jù)太多導致啟動階段加載耗時上升的情況。后來我們做了個折中對性能敏感、且只在固定幾個類型之間使用的泛型盡量在主工程的 AOT 側提前打一次“引用錨點”讓它被 IL2CPP 編譯出來對業(yè)務里零散的泛型用法交給補充元數(shù)據(jù)解釋執(zhí)行。這樣既不出錯性能也可控。4.3 link.xml 裁剪與混淆帶來的一連串問題元數(shù)據(jù)有了但如果構建時裁剪器把 dll 里的元數(shù)據(jù)當成“沒被引用”的垃圾裁掉加載元數(shù)據(jù)時一樣會失敗。HybridCLR 官方工程里通常會帶一份 link.xml 或者在 Installer 時配置好 keep 規(guī)則如果你是自己創(chuàng)建的新工程注意保留 AOT 程序集的相關節(jié)點。我們的教訓是某次為了減包重打開 Strip Engine Code結果線上部分低端機開始隨機出現(xiàn)加載失敗。后來檢查發(fā)現(xiàn)裁剪配置沒有把第三方 SDK 里被熱更代碼反射調(diào)用的類型排除出去反射調(diào)用在 IL2CPP 裁剪后找不到類型。排查時可以先試著把Managed Stripping Level調(diào)到最低確認問題消失再逐步調(diào)高裁減等級定位是哪個規(guī)則誤傷了類型。如果項目用了混淆或加固尤其是對 dll 做二次處理的方案要和熱更鏈路分開對待。熱更 dll 自己可以加密混淆運行時解密再Assembly.Load沒問題但 AOT 元數(shù)據(jù)那批 dll 盡量不要做會影響元數(shù)據(jù)結構的混淆否則LoadMetadataForAOTAssembly時的模式校驗可能直接不通過。排查這類問題有個技巧關閉混淆打一個包如果不再報錯基本就是混淆規(guī)則或順序的問題。4.4 一次真實排查字典泛型在熱更里爆炸當初我們把任務系統(tǒng)挪進熱更程序集時熱更代碼里有這么一段Dictionaryint, TaskReward rewardMap new Dictionaryint, TaskReward();TaskReward是熱更程序集里的一個普通類int是值類型。這個寫法在 C# 里再普通不過但在 IL2CPP 熱更環(huán)境下它是一個典型的泛型特化組合主工程 AOT 側從來沒寫過Dictionaryint, TaskReward所以沒有現(xiàn)成 AOT 代碼。最終是靠補充元數(shù)據(jù)解決的。我們在 AOT 元數(shù)據(jù)列表里帶上 System.dll字典泛型的實現(xiàn)定義在這里并在加載熱更 dll 之前調(diào)用LoadMetadataForAOTAssembly加載它解釋器拿到元數(shù)據(jù)后就能自己解釋執(zhí)行這個泛型方法。如果你也想臨時驗證某個泛型問題是不是補充元數(shù)據(jù)能解決可以寫一段只包含該泛型操作的測試熱更代碼真機跑一次比在論壇上猜快得多。5. 與項目框架配套AB 打包、啟動更新和版本保護5.1 熱更 dll 放 AssetBundle元數(shù)據(jù)放哪里熱更 dll 本質上是一個二進制文件你可以直接放服務器讓客戶端下載后寫到 persistentDataPath也可以塞進 AssetBundle。實戰(zhàn)上我更推薦塞 AssetBundle原因不是放不下一個 dll而是項目本來就有資源更新鏈路復用同一套下載、校驗、加載邏輯比另起一套文件下載穩(wěn)定得多。有一點經(jīng)驗很重要不要把熱更 dll 用 Unity 的 TextAsset 直接打進 ResourcesResources 里的東西在包發(fā)布后是不能動態(tài)替換的只適合放“永遠不會變的 AOT 兜底版本”或某個基礎元數(shù)據(jù)。真正要更新的是放在 AssetBundle 里的那份 dll首包時可以把這個 AB 同時放到 StreamingAssets
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产乱码久久| 少妇69中文| 欧美最大综合网| 天天流夜夜操| 老司机天天操| 中文三一区| 秋霞蝌科网日本一区| 精品无码一二三四区| 精品久久久久,69国产成人精| 中文字幕大片三级狠狠干| 欧美后进式| 性爱Av免费| 国产三级日产三级韩国三级| 天天爽夜夜爽夜夜爽精| 黄色视频特级毛片| 色偷偷综合91久久噜噜| 日本色色色视频| 国产三级中文有码在线视频| 在线观看AV片| 加勒比AV网| 日本幼女18+| 欧美熟妇成人一区二区| 91国产精品熟女| 国产中午字一暮区| 韩日自拍| 蜜乳视频网站| 天天影视激情欧美| 97综合激情| 色波多| 强奸乱伦αv片| 天天综合日韩网| 久草这里只有精品 | 大香蕉欧美伊| 欧美色涩| 久久一二三四五六七八九区区| 97伊人网| 蜜桃视频一区二区三区在线观看| 亚洲第一精品在线视频| 91久久久视| 一区二区三区看视频| 亚洲黄片免费在线播放| 99自拍B亚洲 | 男人下部插入女人下部 | aa片毛片| 啊啊啊不要啊啊受不了了视频在线 | 亚洲激情网| 亚洲欧美综合网站| 日韩成人网址| 自拍偷拍国产欧美日韩韩| 一区二区三区色综合| 久热伊人| 一本大道不卡一二三区| 欧美九九九九九| 亚洲黄日韩无码专区| 亚洲黄色网址视频| 欧亚性爱在线视频| 欧美成人A√在线一区二区| 日本高清一本二本免费不卡| 色www精品视频在线观看| 999岛国大片| 中文字幕97| 欧美第二页午夜| 又黑又大又粗| 中文字幕一区av| 人人看欧美性爱| 人妻在线中出视频| 亚洲天堂一二| 啊啊啊啊,啊啊好多水| 啊啊啊快操我视频| 青女在线| 97自拍一区| 大香蕉伊利av| 欧美色图偷拍另类| 久草精品一区| 日韩精品电影| 99这里都是精品| 久久久久ab| 六月丁操逼| 五月婷婷六月色| 亚洲AV麻豆Aⅴ无码电影一| 欧美激情区| 亚洲欧美黄| 五月天伊人网| 欧美色网络| 国产AAAAAABBBBB| 蜜桃狠狠色伊人亚洲综合| 艳尻美人妻| 日韩精品操少妇| 天天操熟妇| 欧美少妇高潮| 日韩免费簧片| 91人妻中文| 国产女生在线| 五月丁香啪啪网| 激情五月天视频| 亚洲激情网一二三四区| 中文字幕 人妻不满 在线视频| 91模特在线观看| 免费网色网站| 麻豆成人AV| 亚洲啪啪视频免费| 色牛牛AV| 91精品丝袜久久久久久无码人妻| 久久精品99| 色噜噜国产精品视频一区二区| 思思热国产高清| 秋霞午夜成人福利片片| 秋霞操逼片| 欧美91视频| 免费一级黄色录像影片| 97国产天堂岛| 成年人三级黄色片视频| 一区二区三区网站日日骚| 大香蕉欧美国产日韩高潮| 亚洲综合色图欧美| 无码人妻丰满热妇又大又粗| 操逼999| 欧美亚洲首页| 色九九九九久| 校园春色综合香蕉| 免费男人的天堂| 国产精品一二三区18| 久久肏大逼| 97色诱| 亚洲AV在线资源| 乱伦3P视频| 久草精品热视| 亚洲福利影院一区久久| 国产女上位好爽在线| 乱老熟女一区二区三区| AV天堂因数| h无码动漫在线观看| 欧美少妇第一页| 亚洲国产精品无码AV久久久| 欧美天堂亚洲电影院一区在线播放 | 性色av一区二区| 免费久久一级毛片大黄| 日韩精品第3页| 国产精品日日摸夜夜添骚逼| 夜夜国产一区| 免费观看的黄色的网站| 亚洲无码日韩电影| 日本九九久久99| ai欧美亚洲小说| 国产一区二区三区精品观看啪| 超碰97首页| 亚洲超碰AV| 日本综合色图| 亚洲色堂免费视频| 国产精品久久99日日| 超碰97综合网| 国产欧美成人精品| 午夜精品99久久久久传媒| 大香蕉综合网| 91在线视频国产网站| 99999精品成人| 精品人妻一区二区三区视频在线| 韩国三级三级BD在线| 自偷自拍的亚洲视频| 神马久久午夜| 午夜视频久久久| 亚洲日本男人天堂网| 激情国产乱伦Av| 久久男人| 欧美激情综合| 91天天看| 久9精品| 日韩AV片| 五月婷婷激情| 97人人操人人干| 婷婷五月成人| 日韩AV熟女乱伦| 欧美成人A天堂片在线观看| 婷婷九月丁香| 欧美综合色| 99国产精品久久久久久久成人热| 亚洲四虎熟女精品| 久久内射| 欧美色图综合| 放黄片放3级黄片没穿衣服| 国产又长又大又粗的视频| 亚洲中文电影| 9999久久久久| 97超碰免费人人性爱| 少妇毛片久久| 97av,com| 亚洲色电影在线| 国产精品九九九| 色欲天天综合久久久无码网中文| 欧美97爱| 色y情视频免费看| 98人妻精品一区二区色欲| 婷婷15月天青娱乐| 蜜臀Av一区二区三区| 东京热伊久| 91热热色| 国产操偷| 亚欧高清在线| 中文字幕精品丝袜| 夜夜高潮夜夜爽| 欧美色色人| 欧美激情内射| 久久久久久69国产一区二区| 五月激情在线| 久久 久久国内精品亚洲| 吊色| 人人搞人人插人人操| 中文字幕丰满子伦无码专区在线视频最新 | 美女露胸露奶头| 国产精品色哟哟| 欧美日韩精品久久久久东北老熟妇| 日韩人妻网站| 亚 欧 美 综合| 无码操逼天堂| 三上悠亚在线毛片91| 精品v日韩欧美国产| 日本天天人人狠狠在线日美女| 丁香六月东京热| 67914亚洲精品| 极品内射| 中文字幕一区二区三区人妻不卡| a级成人毛片免费视频高清| 久久综合国产精品国产| 欧美熟妇乱码在线一区| 小泽玛利亚一二三| 蜜臀va69| 婷婷丁香成人| 大鸡巴久久| 日韩欧美亚洲自拍偷拍| 毛片17S| 欧美激情在线观看视频| 一起草日韩| 97超碰在线资源网站| 国产中出内射一区二区| 欧美日韩99| 超碰97综合在线| 成人性爱电影一区二区| 密臀AV在线| 久久久精品中文字幕爱豆| 97色在线观看| 久久精品熟妇丰满人妻99| 性爱乱伦一区| 精品人妻一区二区三区四区不卡在| 九九aV| 欧美与日韩97| www.色婷婷.com| 亚洲国产精品成人久久蜜臀| 亚州伊人色综台| 欧洲在线性爱视频| 5252色欧美在线| 日韩熟女精一区二区三区不卡| 五月天婷婷综合| 精品无码久久久久| 丁香激情网| 日韩在线一区二区| 91久久久久久久久18| 久久精品72| 操逼网站视频漫画国产| 日韩性爱免费观看视频| 日韩成人人妻网站| 超碰97玖玖爱| 日本不卡高清免v欧美日韩在线观看| 成人av性爱电影在线观看| 欧美精品在线观看| 国产精品久久久无码AV网站| 亚洲交换| 加勒比人妻综合| 任你草| 色欲蜜臀AV| 91精品91久久久久77777| 免费人成在线观看网站品爱网| 亚洲成成熟女人综合一区二区| 激情综合五月婷婷| 毛片电影一区二区三区| 黄色免费网页无码| 免费一级黄色录像影片| 91精品国产91久久青草| 99re在线视频| 少妇超碰在线| 操操逼操操逼操操逼逼| 亚洲成人无码影院| 伊人网综合在线视频| 91被操| 久久精品成人| 日韩黄色小说| 99热导航| 99热大香蕉伊在线| 97久久天天综合色天天综合色电影| 桃色六月天| 亚洲精品欧洲精品| 亚洲日韩乱码中文无码蜜桃臀网站| 亚洲成?V人片在线观看福利| 99视频这有这里有精品| 蜜臀久久99精品久久久久久婷婷 | 中文无码一二三区| 屌妞视频久久久久久久久久久久| 操逼无毒无码免费视频| 97免费视频在线| www.久久久久| 亚洲综合影视| 亚洲在线A| 亚洲一区二区中文字幕| 999熟女精品| 亚洲图片视频小说| 日韩视频中文字幕| 亚洲综合97| 男人精品天堂一区| a片亚洲一本通视频| 99色在线| 最新日日夜夜天天干干| 大屁股xxxxx| 九九热免费在线国产视频伊人五月| 一本一道vs波多野结衣| 张柏芝国产一区在线观看| 久久久久亚洲av综合波多野制衣| 亚洲人妻一区二区三区| 亚洲AV不卡在线观看尤物| 女人香蕉久久毛毛片精品| 亚洲综合电影| hd成人一区二区在线| 精品久久久久黄少妇| 久久99草| 97视频免费| 欧美18老人禁| 丰满人妻一区二区三区四| 在线色资源| 91老熟女视频| 亚洲AV无码天美传媒一区| 男人天堂一区二区| 69久久| 91啦人妻| 中文字幕天天天天天| 99re视频这里只有精品| 亚洲欧美电影| 91黑丝露脚| 欧美日韩人妻婷婷一区| 久久精品日韩| 长长久久免费视频| 九九九九精品九九九九| 野狼激情网| 久久久久久久久久9| 天天爽天天| 毛片99-全集电影手机免费观看完整-B029AV | 97人人超| av网站在线看| 精品亚州18| 性爱免费视频成人| 91老妇女| 久久久久久久久久久97| 性爱网站一区二区| 99热这里只有精品9| 亚洲免费97免费| 素人一区二区三区日韩| 2020天天色综合| 在线日韩视频| 精品人妻中文字幕4399| 91n处女在线观看| 台湾肥佬网一区二区三区| 日逼逼免费看| 欧美高清色| 久久AV色| 久99久视频| av九九| 欧洲亚洲人人爽爽视频| 人妻天天夜夜爽一区二区| 张柏芝国产一区在线观看| 亚洲一二三精品久久网 | 九九热视频这里只有精品| 久草网站免费在线观看| 加勒比99999| 色区久久| 色婷婷综合久久中文字幕雪峰| 国产午夜精品在线观看| 熟女一区二区三区四区| 日产国产精品中文久久婷婷| 国产人妻天天干精品| 26uuu最新| 色97| 120分钟婬片免费看| 一区二区三区黄色片a| 亚洲高清自拍| 超碰久草| 99少妇内射| 国产成人主播| 欧美少妇大量自拍视频在线观看| 少妇综合网| 亚洲免费日韩在线一区二区| 99国产人成精品| www.伪伪| 中文操逼字幕| 成人一级性爱| 久艹免费| 亚洲天天精品| 日韩久射综合| 吊色| 97在线看| 色妺妺AⅤ| 中文字幕成人乱码熟女精品国50 | 日韩av女优在线免费一区| 黄片免费看黄片免费看| 欧美成人四级在线播放| 亚洲欧美国产中文视频| 人妻少妇精品| 亚洲日韩电影| 精品国产乱码| 久干9操| 中国AV美女| 91在线丝袜| 日本精品一区二区三| 日本久久久久久久久久| 天天综合站| 人妻精品一区二区| 成年人黄色小视频网站| 综合欧美日本三级| 91 手机在线播放 绯色| 啊啊啊啊啊啊好湿好爽视频| 人妻 中文 日韩| 欧美999| 国语对白在线播放视频| 欧美熟妇精品黑人巨大一二三区| 亚洲色婷婷综合久久久久中文| 亚洲色图欧美色图日韩色图| 精品成人女人久久| www成人啪啪18秘 免费| 春色91| 五月天婷婷欧美三区| 少妇熟女视频一区二区三区| 久久久久久AⅤ无码免费肉站| 91欧美高清| 国产精品视频在线观看| 色五月激情综合网| 九九九九九九九九九国产精品 | 日韩久久艹| 人人干人人搞人人摸| 自拍啪啪视频| 免费福利视频中文字幕| 日日AAvv| 久久综合日韩亚洲欧美| 亚洲偷拍自拍在线视频| 狠狠婷婷亚洲中文综合久久| 熟妇国产免费一区| 亚州AV无码国产精品| 色九九九九九九| 1956日韩精品| 欧美另类精品xxxx| 日日AAvv| 最新日产中文在线麻豆| 免费岛国一级片| 中文字幕人乱码中文字的预防方法 | 狠日操| 激情视频图片| 一区二区不卡| 日日干夜夜干| 午夜精品五区| 夜夜嗨一区二区三区直播内容| 午夜精品久久久99| 久久草草欧美精品| 99精品视频在线观看免费| 超碰2017| 亚91网| 天天情欲宗合网| 久九干| 午夜成人爽爽爽爽A片李冰冰| 久久99草| 久久xx| 天天综合欧美黑人| 色在线69堂| 97色插| 国产欧美日韩在线不卡第一页| 欧美亚洲尤物久久| 69国产对白刺激| 久久色精品视频在线| 乱子伦一区二区三区国产精品| 亚洲91亚洲| 大香蕉伊人一区在线观看| 国产 码在线成人网站| 国产粉嫩出水在线播放| 中国一级操逼视频| 岛国大片在线观看网站入口| 国产黄色剧情影片麻豆免费播放| 青青草中日韩在线| 欧美1727免费观看视频| 蜜色网色哟哟| 91草草草| 欧美小说区视频区| 久久久久久9| 人人妻人人爽| 天天久久| 久久精品中文字幕观看| 日本三级一区二区 在线| 精品人妻一区二区视频| 天堂а√在线最新版在线| 插穴性爱视频在线观看| 强歼乱伦资源网| 亚洲九月丁香| 91久久精品中文字幕| 亚洲AV成人精品网站在AV| 午夜操逼不卡| 久久激情视频| 日本韩欧美在线播放a| 91neishe| 亚洲精品蜜桃久久久| 中文字幕伊人| 人妻大香蕉| 亚洲第二页| 中文字幕97| 精品欧美А∨无码黑人大荫蒂| 亚洲日本男人天堂网| 久干网| 国产精品一区人妻精品阁在线| 人妻少妇三级| 97色综合中文网| 日本成人在线不卡一区二区三区 | 久热久| 亚洲色图20p| 99热线麻豆 | 黄色一区三区| 精品玖九九久| 亚洲中文字幕一区二区| 老司机福利社视频在线观看| 亚洲偷91色| 成人综合视频久久| 黄站在线免费观看| 国产精品久久久久久亚洲色欲| 2018色综合天天操| 九九亚洲色在线观看| 久96热在线观看视频| 色五月婷婷中文字幕| 久久99热这里只频精品6学生| 大香网站| 免费97视频| AV一起草在线| 精品一区二区啪啪啪| 久99在线免费观看视频| 777奇米影视777四色| 欧美天堂第二区| 天天综合网网欲色| 男人天堂站| 清纯唯美亚洲综合| 女人高潮抽搐喷水视频网站| 韩日男人的天堂| 一级人妻性爱视频| 91天美传媒在线观看| 亚欧操逼片在线观看| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 亚洲在钱| 乱人伦 国语对白:视频直接看| 亚洲欧美日韩电影网站一区 | 久久只有精品一区二区三区| 久草资源在线| 五月丁香狠狠爱| 蜜臀久久久99久久久久 | 欧美一区二区日韩三区| 超碰日韩美妻| 五月丁香婷婷色| 亚洲久久久| 久操精品网| 特污精品女优骚货黄色视频在线免费观看| 花野真衣| 国产精品成人蜜臀AV在线| 日本亚欧爱爱| 狠狠操天天干| 中文日本免费高清| 精吧天堂| 久久色人体| 日本十八禁免费看污网站| 一区超碰一区| 岛国小电影| 精品一区二区综合熟妇| 熟人人妻少妇精品久久| 明星性猛交ⅹxxx乱大交| 亚洲熟久久| 人人人人人人少妇| 国产AV高清AV无码| 国产成人自拍视频视频| 大香蕉欧美日韩| 99热66| 在线观看岛国有码| 日本东京热久久久电影| 岛国天天午夜影院传媒网| 欧美黄色图片| 日韩精品区二区三区不卡| 黄片色区软件| 精品国产无码中文| 大香蕉78| 91欧美经典| 欧美一区二区日韩传媒搭讪精品| 欧美性爱另类综合| 成人激情无码在线视频| 亚洲中文字幕精品一区| 久久激情视频| 成人一级二级| 色眯眯av| 天天热精品| 日本精品性生活久久久| 神马久久久久久久久久久久| 日本天堂网| 麻豆婷婷成人一二三| 国产一级黄色片在线观看| 久久精品国产亚洲5555| 凹凸视频在线一区二区| 青青草依人大香蕉| 日本精品九九九| 少妇六月天| 中文字幕片| 久久亚洲不卡一区二区三区| 成人贴图日韩欧美| 天天干一区二区| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 天美传媒精品久久视频| 亚洲 日本 不卡| 一区二区视频在看| 亚州成人A√| 熟妇最新先锋一二三区| 色哟哟-国产专区| 欧美另类自拍| 超碰97久久国| 亚州高清av| 四虎精品亚洲| 日韩熟女无码| www网站黄| 中文字幕在线观看丝袜| 爽爽爽免费视频| 欧美久久人妻少妇一区二区| 亚洲影视高清第一页| 亚洲春色欧美| 女人天堂av在线播放| 97免费视频在线| 亚洲丝袜二区在线| 婷婷色色五月天福利| 国产真乱mangent| 午夜精品久久久久久久99蜜桃一| 激情综合色| wwe 天天干.com| 日本新免费二区三区| 啊啊啊 在线| 久久久久九九九九| 丁香色色网| 亚洲成人一二三区| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 国产情侣自拍在线播放| 亚洲吊色| 国产精品扒开腿做爽爽爽视频| 日产操逼| 日本高清电影欧美色图| 极品美女嘿咻| 久久一级无码精品毛片6| 精品久久久中文字幕不| 亚洲激情视频| 日噜夜夜夜夜夜夜夜夜夜夜爽爽爽爽爽爽爽爽爽爽爽爽 | 乱伦色图网址是多少| 91爱综合| 国产精品国产精品国产| 国产最火爆久久国产网站网站| 99视频只有精品| 国产精品粉嫩福利在线| 性爱边摸边日免费AV| 天美国产精品| 国产老太乱伦一区| 久久久999日本大片| 国内一级精品| 国产一区在线观看无码AV| 亚洲中文字幕乱码无码一区二区| 麻豆三极片| 欧美综合站| 男人综合网| 中文字幕av色| 综合网天天| 美女超碰978| 欧美日韩在线视频网站| 青青草白白色| 综合免费无码中文| 蜜桃网熟妇| 九九亚洲视频| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 欧美天天综合网| 欧亚综合一卡二卡中文字幕| 操熟女91| 五月天婷婷基地| 久久亚洲中文字幕视频| 97爱欧美| 女人被添高潮免费视频| 乱老熟女一区二区三区| 国产特级毛片AAAAAA高潮流水 | 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 久久久免费高清中文视频| 婷婷激情四射| 国产亚洲日韩欧| 免费在线观看国内色片网站网址| AV色女综合| 91大香蕉伊人| 爱爱60秒免费视频| 婷婷六月色开| 亚洲精品无码久久AV| 国产精品国产| 亚洲成人一二三区| 免费看久久久性性| 日韩操啪| 亚洲影视综合| 宅男午夜在线视频| 婷婷五月天补不补| 超碰国产在线| а√天堂资源官网在线资源| 中国小夫妻勾搭露脸淫荡对白| 欧美十八禁导航成人| 在线观看中文字幕| 91天天爽| 97蜜桃综合| 加勒比大香蕉视频在线| 成人午夜小视频手机在线看| 日本不卡在线二区三区| 日本97久久| 97超碰人操| 国产乱码久久| 91美女丝袜诱惑视频| 蜜乳性色无码专日粉嫩骚逼AV| 日韩三A大片在线观看| 亚州欧美在线| 狠狠入| 少妇大屁屁| 蜜臀AV成人精品蜜臀AV久久| 国产一区二区三区中文字幕| 五月丁香激情啪啪| 婷婷五月天色色| 一级性爱aaaa| 色五月综合| 日韩精品中文字幕一 | 久久精品视频28| 久久久婷| 中文字幕日韩情色| 少妇人妻精品| 男人久久精品| 亚洲精品一区二区免费在线观看| 九九热九九热| 欧美香蕉视xxx| 亚洲国产中文字幕| 国产和美国毛片| 国产熟女高潮一区二区三区| 清纯唯美亚洲另类| 97啪啪| 欧美爆乳精品一区二区| 国产免a费看黄片在线| 麻豆国产免费影片| 韩国一区二区精品亚洲| 日本男人插女人的逼黄色| 91网站18+| 天天插网| 91精品人妻电影| 日韩另类色图| 91AV天美在线视频| 久久久久96| 东北女人操逼| 国产乱伦亚洲色图高清无码| 亚洲AV无码乱码| 精品毛片av一区二区| 欧美视频一区二区在线| 长长久久免费视频| 欧美国产操逼| 日本在线观看网址| 90后性网国产欧美| 精品久久99| 久久精品无码一区二区三区| 激情抓乳插进去啪啪啪日韩 | 91久久精品国产| 超碰欧美97资源| 中文操逼字幕| 天天日天天色| 欧美精品,四区。五区| 91无码西班牙视频在线| 色情综合网| 97视频在线观看播放与子乱对白在线…… | 志村玲子视频一区二区| 欧美激情黑人| 家庭乱伦国产| 中文字幕片| 欧洲综合色图| 超碰九色| 亚洲高清男人天堂| 欧美性爱无码一区二区三区| 婷色五月| 久9爱经典视频| 手机在线播放国产福利| 精品国产乱码久久久兰草影视| 欧美激情精品久久久久久| 自拍内地三级在线观看| 久久永久无码人妻视频| 久久99国产综合精品女同| 欧洲特黄毛片免费看欧洲毛片| 亞洲久久直播| 亚洲日韩少妇一道本视频| 男人的天堂三级| 精品亚洲| 丁香九月激情| 久久天堂| 久久久久久波多野吉衣高潮| 午夜福利无毒不卡| 亚洲系列欧美| 欧美成va视频网站| 国产尤物在线三区| 天天做天天爱| av毛片aaaaa免费看| 欧美色图下一页| 亚洲暴力强奸AV| 日日摸日日碰夜夜爽视频| 曰韩成人免费视频| 成熟熟女国产精品一区二区 | 欧美综合色图网| 东京太热久久久| 欧洲精品区| 美女刺激久久国产欧美| 国产精品久久久久久久AV大片| 97天天弄| 丝袜美腿欧美| 国产色精品午夜大片| 91性网| 大香蕉综合久久| 丁香啪啪| a一区二区三区乱码在线| 综合色久欲| 熟妇一区二区三区| 免费黄色视频网址| 久操网无码在线| 蜜桃臀AV在线| 尤物av网站| 日韩一级成人毛片免费观看 | 五毛骚逼极品美女怕怕| 9超碰免费| 久操com| 人人操人人插人人摸人人干| 三男一女不戴套的A片| 国产精品女生av| 欧美1区二区三区公司| 九九久久一区二区伦理| 欧美一区二区三区不卡高清视频 | 人妻天天夜夜爽一区二区| 亚洲精品亚洲人成在线麻豆| 亚洲九九九| 亚洲丝袜在线观看| 4tube欧美女厕所| 国产第二页| 鸥美精品一区二区久久婷婷| 红杏大香蕉| 欧美性性性| 97超碰欧美精品| 欧美在线 亚洲| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 福利社区午夜一区二区| 17c嫩草51久久91嫩草| 欧美BT 亚洲色图| 小草精彩毛片| 精品少妇后入一区二区三区四区人妻巨乳| 欧美另类综合久久| 手机在线播放国产福利| 性爱视频无打码在线观看| 国产精品麻豆视频网站| 欧美激情性久久久久久| 影音先锋日本乱伦| yaouchengrenav| 国产午夜在线观看视频| 超碰地址久久| 好爽视频在线观看视频| 久操精品| 九九九九久久久久| 美女黄页网站| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 十八禁视频网站| 色爱综合网| 国产网站在线播放| www.狠狠| 懂色综合久久久| jizzjizz欧美| 国产在线综合网| 蜜桃臀AV在线| 麻豆 亚洲 97| 亚洲男人的天堂AV| 亚洲污污网站| 十八禁电影伊人网| 91亚洲欧洲| 欧美成人性爱视频免费观看| 亚洲男人bt天堂| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 人妻天天夜夜爽一区二区| 青青草精品| 午夜噜噜噜| AA特级绝黄| 日韩伦理久 久久 清纯| rivers-china.com| 男人天堂网站| 色婷婷丁香| 亚洲男人天堂网久久| 国产精品一区二区三区免费视频| 人人潮人人摸| 婷婷久久综合久| 亚洲综合校园春色| 国产激情视频一区区三区| 日韩中文字幕在线视频观看| 四虎884a| JIZZJIZZ亚洲女人被躁| www.久久最新地址| 国产精品视频| 手机在线免费看的av| 超碰人人乐97| 欧美少妇色图| renqi久久久久久久久久久久| 一本色道久久综合狠狠操| 黄网色一区二区三区四区精品| 日韩电影天堂视频二区三区| 搡老女人911熟妇老熟女| 五月婷婷激情网| 97碰碰色| 日韩啪啪啪啪啪| 91日韩| 九色 人妻 大香蕉| 亚洲精品久久久久毛片A片拉屎 | 亚洲毛片一级带毛片基地| 亚洲欧美setu| 国产最新小视频在线播放下载| 志村玲子视频一区二区| 亚洲怡春院| 青娱乐国产盛宴视频| 97精品第3页| 美女国产一区二区久久| 新怡红院| 欧美日韩99精品麻豆传媒| 久久亚洲一区二区色婷婷| 99色视频| 91av熟女人妻| 欧美亚洲国产日本在线,久久精品国产| 一本精品日本在线视频精品| 婷婷久久久精品| 色婷网| 超碰在线人人射| 劲爆欧美人妖三区91| 毛片视频白嫩| 欧美日韩性爱电影在线| 屌妞视频久久久久久久| 可乐操在线| 激情五月天婷婷| 1769一区| 欧美综合色综合| 久极品在线观看| 欧美日韩操逼动图| 亚洲资源吧| 九九九九日本 | 无码高清操逼网址| 97视频新免费| 中文字幕高清20页视频| 一级@啪啪视频| 97爱啪| 欧美日韩国产三级黄色| 插插综合网天天影视网| 天天干天天日天天射黄色| 欧美国产伊人久久久久| 大鸡巴久久| 物业黑人 AV一区| 午夜天堂网| www.色婷婷.com| 另类一区| 久久久久久国产无码精品| 级做a爱无码性色永久免费| 超碰碰97资源站| 精品久久久av| 2024人人操人人摸| 日韩黄色一区二区三区| 日韩av免费一级电影| 久久久96精品| 国产精品乱码久久久、久久| 91女神在线视频| 尤物网址| 国产精品一区二区手机看片| 日本一区二区中文字幕久久| 欧美色女人| 懂色aV一区二区天美传媒| 精品一区二区三区18| 欧美高清在线| 亚洲少妇免费视频\| 欧美手机在线综合| 天天激色| 日韩在线97| 台湾大香蕉99热| 欧美91在线+|+欧美| 久久婷婷在线观看视频| 91色爽欧美| juliaann精品熟女一区| 一区二区三区机械有限公司| 欧美一级国产一级| 亚洲伊人久久综合97| 久操com| 色臀aV| 蜜臀在线看片| 日韩91网| av中亚| 欧美成人四级在线播放| 亚洲国产91精品一区二区久久| 无码精品久久久久久亚洲| 69视频入口| 97任你吞精| 999岛国大片| 国产suv精品一区二区四区999 | 999久久久精品国产| 久久麻豆一区二区| 日逼五月天| 国产少妇高潮| 96麻豆精品一区二区三区| 欧美18老人禁| 国产原创剧情在线丝袜| 精精夜夜| 97人人色| 免费试看60秒| 婷婷中文网| 国产玖玖| 蜜臀久久久国产| 97视频免费| 国产激情在线| 国产精品青草综合久久| 久久精品店| 无码99| 国产丁香精品露脸视频| 久久91精品国产9丨久久分亭| 91久精品| 91综合网站| 天天天天天干夜夜夜夜夜操| 亚州欧美总和| 一本大道不卡一二三区| 台湾佬激情综合| 久久久久人| 日日噜噜夜夜狠狠视频无| 操婷婷逼| 欧美91精彩| 国产精品国产亚洲区艳妇糸列| 黄网在线播放| 激情丁香五月婷婷| 日日摸日日碰夜夜爽视频| 大香蕉综合在线| 天天天堂影视日韩亚洲91| 亚洲图片色图欧美另类| 校园春色制服丝袜中文字亚洲| 少妇色欲综合网2| 日韩一级成人毛片免费观看| 在线观看视频91| 日韩美女操b| 黄色高清久久无码依人| 亚洲伊人久久综合97| 婷婷丁香六月| 欧亚日韩中文在线| 另类一区| 91爱剪切久久| 天天影视综合网欧美精品| JuliaAnnXXX888| 久久黄黄| 国产一区二区成人av在线播放| 无码一区二区三区四区五区六区七区八区九区十区视频 | 粉嫩久久久久| 伊人女女资源在线观看| 天天拍天| 天天日天天操心| 欧美国产精品久久九九| 亚洲 se图 欧美电影| 欧美精品99久久久**| 后入精品| 亚洲欧美另类图片| 色婷婷婷五月天激情四射| 国产精品白领在线观看| 欧美 亚洲 综合 制服 另类| 色官网在线| 日韩成年人性爱视频| 国产精品视频在线播放| 91操人| 狠狠色五月亚洲91| 综合激情97 | www.zbzhongsen.com| 天天爱天天操| 欧美一级A片在线看视频性色| 美女黄网| 日韩精品大香蕉伊人在线| 综合激情婷婷| 天天草夜夜草高潮片| 欧美激情专区| 果冻传媒一区二区三区| 色 婷97| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 色九久| 欧美人妻一区二区| 香蕉一区二区三区在线视频| 东北丰满熟女国产一区 | 亚洲图片偷拍视频区| 亚洲人妻熟妇三十三区| 97九色人妻| www.久久| 蜜乳性色无码专日粉嫩骚逼AV| 深夜福利黄片| 内射中出日韩在线观看视频| 涩涩五月天| 久99热| 熟女乱伦二区| 91chinese在线| 日韩A优精品在线观看| 一牛影视成人片免费| 一区二区影院| 人人人人插| 国产黄片精品在线| 亚洲精品乱码线路中文字幕 | 欧美黄色图片| 欧美在线啊啊啊| 国产原创自拍| 91大胆欧美| 99操逼| 一品道视频一区二区三区| 国产久久久9999| 中文字幕十五区| 亚洲色图 欧美热图 清纯唯美 另类自拍| 精品国产一区二区三区av在线资源| 97久久精品亚洲| 区一二区日韩亚洲乱码av电影| 青木玲在线不卡| 亚洲交换| 亚洲综合欧美| 97综合网| 日韩国产精品人妻无码久久久| 亚洲男人综合| 秋霞一级鲁丝片A片| 国产51色综合久久免费| 99色网| 蜜乳AV一区二区三区四| 综合久久99| 日本日日色视频| 另类欧美色| 69麻豆天美| 精品国产一级久久| 另类图片五月| 91xingse| 乱理日韩中文| 久久精品一区二区三区蜜桃臀| 亚洲超碰97| 欧美视频一区二区在线| 毛片中心9视频99| 欧美日韩电影成人在线| 日本精品网站在线中文| 国产成人一级av88| 欧美大香蕉卡久久| 精品人妻一区二区蜜桃视频| 色色毛片| 精品久久久无码| 9久9久| 国产精品无码在线| 柠檬AV导航| 熟妇亚洲一区二区三区| 亚州中文字幕超碰97| 国产精品com| 蜜臀av一区二区三区免费观看| 欧美亚洲国内自拍| 欧美国产有色电影| 黄久在线| 无码操逼视频一下| 97久久久久久久精| 一区二区三区色综合| 97久久综合网| 精品人妻中文字幕高清| 99色色| 欧美性91|