99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

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

Flutter TON交互庫鴻蒙化適配:橋接方案與踩坑實踐

Flutter TON交互庫鴻蒙化適配:橋接方案與踩坑實踐 最近我接手了一個比較有意思的適配任務(wù)把一個 Flutter 生態(tài)里常用的 TON 鏈上交互庫 ton_dart 搬到鴻蒙應(yīng)用里還要在實際場景中跑通資產(chǎn)查詢、轉(zhuǎn)賬還有 TON 治理投票的鏈路。ton_dart 這個庫在 Dart 世界里算是 TON 相關(guān)功能最全的三方庫之一錢包、Jetton、NFT、合約交互都有覆蓋可它畢竟是跑在標(biāo)準(zhǔn) Dart VM 上的到了鴻蒙原生環(huán)境里網(wǎng)絡(luò)請求、密鑰生成、消息簽名這些底子都得重新對接。這篇文章就是把我在模擬項目里真實趟過的鴻蒙化路徑、改造成本、關(guān)鍵代碼和踩坑點完整寫出來適合要在鴻蒙上做 Web3 錢包、鏈上治理工具或者資產(chǎn)看板的開發(fā)者直接參考。這套適配的核心思路不是把 ton_dart 重寫一遍而是做一層“能力替換層”。鴻蒙側(cè)沒有 Dart VM 對原生插件的那套自動綁定但 Flutter 工程可以通過 MethodChannel/Pigeon 和鴻蒙原生代碼通信所以我們可以把 ton_dart 依賴原生能力的部分抽出來在鴻蒙側(cè)用系統(tǒng)級的 Crypto 和網(wǎng)絡(luò)能力補上把純 Dart 的協(xié)議邏輯保留下來。這樣既保住了 ton_dart 里成熟的 TON 消息構(gòu)造、BOC 序列化、地址解析邏輯又讓它在鴻蒙上真正跑得動。下面我從方案選型開始一步步拆。1. 項目背景與適配思路拆解1.1 ton_dart 到底解決了什么問題如果你對 TON 鏈上開發(fā)有了解就知道這個生態(tài)里最成熟的開發(fā)生態(tài)其實是 TypeScript其次有 Python SDKDart 這邊能用的完整客戶端庫并不多。ton_dart 是這個生態(tài)里少有的全能型選擇它支持從助記詞生成、HD 錢包派生到賬戶余額查詢、Jetton 代幣解析、NFT 列表查詢再到構(gòu)造并發(fā)送各種類型的 TON 消息甚至能對接鏈上治理相關(guān)的提案數(shù)據(jù)和投票消息。對于 Flutter 團隊來說要在同一套代碼里同時覆蓋 iOS、Android 和鴻蒙把業(yè)務(wù)邏輯寫在 Dart 層是最舒服的。ton_dart 的存在意味著合約編解碼、地址轉(zhuǎn)換這些純邏輯可以全部復(fù)用不需要在每個平臺上各自寫一套 TON 協(xié)議的實現(xiàn)。我在這次適配里最看重的是它的“消息構(gòu)造”能力。TON 的鏈上操作本質(zhì)上是把一筆交易或一條消息編碼成二進制格式然后廣播到網(wǎng)絡(luò)里去。這個過程涉及斷言Cell、引用Ref、BOC 字節(jié)流、TL-B 序列化規(guī)則手動實現(xiàn)一遍很容易出錯。ton_dart 把這套東西封裝成了比較干凈的 API我們只需要傳遞業(yè)務(wù)參數(shù)就能得到打包好的消息體。所以適配的第一原則出現(xiàn)了凡是不依賴平臺的純 Dart 邏輯原樣保留凡是依賴平臺的堅決替換。1.2 鴻蒙平臺對 Flutter 插件的真實限制鴻蒙應(yīng)用目前走的 Flutter 集成路徑和傳統(tǒng) Android/iOS 有一個關(guān)鍵差別Dart 側(cè)不能直接調(diào)用常見的原生插件自動生成的膠水代碼因為鴻蒙的 Flutter 引擎對外提供的通道是拍平過的平臺通道。也就是說你在 Android 上常用的MethodChannel、EventChannel、Pigeon這些機制在鴻蒙上同樣存在只是對端的實現(xiàn)語言變成了 ArkTS不再是 JVM 或 Objective-C。ton_dart 原樣跑在鴻蒙上的最大阻礙有三個。第一是網(wǎng)絡(luò)庫ton_dart 默認用的 Darthttp包在鴻蒙上雖然能發(fā)請求但在長連接、證書校驗和連接池復(fù)用這些環(huán)節(jié)上和鴻蒙系統(tǒng)網(wǎng)絡(luò)棧有兼容差異遇到復(fù)雜鏈上響應(yīng)時容易出奇怪現(xiàn)象。第二是安全隨機數(shù)和密鑰管理助記詞、私鑰這種東西如果只存在 Dart 側(cè)的內(nèi)存里對錢包應(yīng)用來說是不及格的。第三是簽名算法TON 鏈上主要用 Ed25519 做消息簽名鴻蒙系統(tǒng)的密鑰管理與加解密框架原生支持這個算法這給了我們用系統(tǒng)能力替代純 Dart 實現(xiàn)的絕佳條件。1.3 三方適配方案選型對比我在正式動手前對比過三條路線。第一是全量重寫在鴻蒙側(cè)用 ArkTS 直接實現(xiàn) TON 錢包和治理邏輯好處是沒有跨語言的橋接損耗但壞處是工作量大而且要重新處理地址、BOC、Jetton 元數(shù)據(jù)這些繁瑣協(xié)議維護成本極高。第二是純 Flutter 層硬跑直接把 ton_dart 放進工程只在鴻蒙側(cè)補網(wǎng)絡(luò)權(quán)限這條路最快但只適合簡單查詢一旦涉及簽名和安全的密鑰存儲就基本應(yīng)用不了。第三是橋接式適配保留 ton_dart 的協(xié)議層把密鑰生成、簽名、網(wǎng)絡(luò)請求、安全存儲這四類能力橋接到鴻蒙原生實現(xiàn)。我選了第三種理由很直接它能最大程度復(fù)用 ton_dart 里成熟的純 Dart 邏輯又把最需要平臺能力的地方交給了鴻蒙系統(tǒng)框架。橋接的代碼量其實不多核心就是幾個方法通道和一套參數(shù)約定。相比之下全量重寫的風(fēng)險高且收益低而純 Flutter 硬跑又扛不住真實錢包業(yè)務(wù)對安全性的要求。適配完成后的整體架構(gòu)可以簡單概括為Dart 側(cè)跑協(xié)議鴻蒙側(cè)跑系統(tǒng)能力中間過橋傳二進制。2. 前期準(zhǔn)備與工程改造要點2.1 基線工程與依賴落地我在模擬項目里用的基線是鴻蒙系統(tǒng)當(dāng)前主流的 Flutter 混合工程結(jié)構(gòu)也就是在鴻蒙原生工程里掛一個 Flutter 模塊Flutter 側(cè)保持標(biāo)準(zhǔn)的 pub 依賴管理。ton_dart 目前發(fā)布在 pub 倉庫上直接在pubspec.yaml里聲明依賴就能拉下來。不過要注意版本收斂問題ton_dart 對 Dart SDK 版本有要求如果你項目的 Flutter SDK 太老要先升級 Flutter 版本再跑依賴解析。另外要提醒一點因為 ton_dart 會間接依賴一些常見的 Dart 包在部分網(wǎng)絡(luò)環(huán)境下依賴?yán)容^慢建議提前把 pub 源的鏡像地址配好或者把整包離線緩存下來。工程落地時還要在鴻蒙側(cè)的模塊描述文件里把網(wǎng)絡(luò)權(quán)限加上否則后續(xù)所有鏈上請求都會被系統(tǒng)直接攔截而且這個權(quán)限要在真機調(diào)試前就確認不然排查起來很容易繞彎路。2.2 依賴模塊的裁剪與適配工作量對照拿到 ton_dart 源碼后我沒有急著改代碼而是先把它經(jīng)歷的功能模塊摸了一遍用表格把“哪些可以直接用”“哪些需要替換”理清楚。這個動作能幫助團隊快速估算工時也避免在適配過程中釜底抽薪改動核心模型。模塊ton_dart 原實現(xiàn)鴻蒙側(cè)問題點適配方式地址解析與格式化純 Dart 邏輯無明顯問題原樣保留BOC Cell 序列化/反序列化純 Dart 實現(xiàn)大數(shù)據(jù)量下性能一般但功能正確保留長消息可在原生側(cè)拼接BIP39 助記詞Dart 隨機源與詞表隨機源安全性不夠鴻蒙原生生成并返回Dart 復(fù)用詞表私鑰與助記詞存儲內(nèi)存對象沒有系統(tǒng)級安全存儲鴻蒙 KeyStore 能力橋接Ed25519 簽名Dart 或依賴包實現(xiàn)需要與鴻蒙密鑰庫打通鴻蒙 Crypto 框架簽名網(wǎng)絡(luò)請求 Toncenter APIDart http連接池、證書鏈、網(wǎng)絡(luò)策略差異鴻蒙原生網(wǎng)絡(luò)棧接管這個表還有一個隱藏作用就是團隊里如果有人想先做一部分可以照著表格劃分任務(wù)邊界。比如“地址解析”和“BOC 序列化”這兩塊完全不依賴平臺誰都可以先做而“簽名”和“安全存儲”必須和鴻蒙側(cè)一起聯(lián)調(diào)應(yīng)該安排到后期集中攻堅。2.3 權(quán)限聲明與安全存儲設(shè)計在鴻蒙工程里網(wǎng)絡(luò)權(quán)限需要在前臺模塊的配置文件中顯式聲明。如果你在調(diào)試時所有鏈上請求都報系統(tǒng)錯誤第一件事就是檢查這個權(quán)限是否已經(jīng)添加。除了網(wǎng)絡(luò)權(quán)限錢包類的應(yīng)用還在乎一個底線問題助記詞不能被普通內(nèi)存持有太久。ton_dart 原生的做法是讓助記詞和私鑰以 Dart 對象形式存在這在普通 App 里問題不大但在鏈上資產(chǎn)管理的場景里風(fēng)險偏高。我的處理是把助記詞的生成和私鑰的加載都收口到鴻蒙原生側(cè)交給系統(tǒng)安全能力托管Dart 側(cè)只保留一個不落盤的會話句柄。簽名時由鴻蒙側(cè)根據(jù)句柄找到密鑰材料在系統(tǒng)安全環(huán)境內(nèi)完成簽名Dart 側(cè)只拿到簽名結(jié)果。這樣即使 Dart 層被攻擊私鑰材料也不會暴露完整。當(dāng)然這增加了一層橋接代碼但值得。3. 核心適配步驟與代碼實現(xiàn)3.1 用 Pigeon 建立穩(wěn)定的橋接通道如果方法通道的調(diào)用參數(shù)只有三五個少得可憐的數(shù)量用 MethodChannel 手寫沒有問題。但 ton_dart 橋上涉及的參數(shù)會包括助記詞、簽名輸入、交易消息、網(wǎng)絡(luò)返回體類型復(fù)雜且數(shù)量多這時候我建議直接用官方推薦的橋接代碼生成工具 Pigeon把接口定義成類型安全的 Dart 抽象類再自動生成鴻蒙側(cè)的存根代碼。這樣無論是 Dart 側(cè)還是 ArkTS 側(cè)都變得可控得多不用手寫一長串字符串類型的 method 名和參數(shù)字典。一個容易被忽略的點是TON 的業(yè)務(wù)數(shù)據(jù)大量是二進制格式比如打包好的 BOC 字節(jié)流不是普通 UTF-8 字符串。所以橋接協(xié)議我建議設(shè)計成以Uint8List為主、String為輔Dart 側(cè)的Uint8List到 ArkTS 側(cè)的Uint8Array有現(xiàn)成的轉(zhuǎn)換規(guī)則但一定要避免中間過程隱式轉(zhuǎn)成字符串又轉(zhuǎn)回來的“假二進制”操作否則任何一次轉(zhuǎn)碼失誤都會導(dǎo)致 BOC 數(shù)據(jù)錯位最終在鏈上解析成一個完全不同的消息。3.2 BIP39 助記詞與密鑰生成的鴻蒙化實現(xiàn)TON 的錢包助記詞遵循 BIP39 標(biāo)準(zhǔn)詞匯表生成流程是先用安全隨機源取 128/256 位熵加校驗位后映射成 12/24 個單詞。ton_dart 里已經(jīng)有一整套詞表文件和校驗算法這部分純 Dart 不需要動。真正要換的是“安全隨機源”這一環(huán)因為 Dart 側(cè)的隨機源強度在不同平臺上表現(xiàn)不一致而生成助記詞是資產(chǎn)安全的第一步必須用系統(tǒng)級安全隨機數(shù)。在鴻蒙側(cè)實現(xiàn)時我用的是一個非常樸素的流程生成隨機熵 - 傳給 Dart 側(cè)的 ton_dart 詞表邏輯做校驗位補齊和單詞映射。Dart 側(cè)拿到的是原始熵字節(jié)也就是 16 個或 32 個隨機數(shù)然后調(diào)用 ton_dart 里現(xiàn)成的recoverFromMnemonic和generateMnemonic相似的內(nèi)部邏輯。這里要注意不要用 Dart 側(cè)自己生成的隨機數(shù)去生成助記詞否則即使詞表邏輯對隨機源強度也不過關(guān)。為了保險我在鴻蒙側(cè)還加了一次最小熵校驗如果系統(tǒng)返回值全零或者固定模式就直接拒絕繼續(xù)。3.3 Ed25519 簽名鏈路的橋接與驗簽TON 鏈上簽名用的是 Ed25519 算法而且簽名對象通常不是普通的可讀文本而是“消息 Cell 的哈?!薄T?ton_dart 的調(diào)用鏈里業(yè)務(wù)方會先構(gòu)造一個 Cell取出它的哈希值再對該哈希做 Ed25519 簽名最后把簽名塞回消息的外層結(jié)構(gòu)中。鴻蒙側(cè)做簽名時我選擇把密鑰材料托管在系統(tǒng)安全能力里Dart 側(cè)只傳一個“密鑰句柄”和“待簽名數(shù)據(jù)哈希”。ArkTS 側(cè)收到請求后調(diào)用系統(tǒng)框架的 Ed25519 簽名接口返回 64 字節(jié)的簽名結(jié)果。這里特別容易出錯的是字節(jié)序和哈希長度Ed25519 簽名輸入必須是 32 字節(jié)的原文哈希如果你不小心把哈希轉(zhuǎn)成了字符串再轉(zhuǎn)回二進制長度和內(nèi)容都可能變。簽名結(jié)果也要原樣傳給 Dart 側(cè)不能經(jīng)過 JSON 序列化丟精度。為了驗證橋接后的簽名是否可靠我在本地做了雙端驗簽Dart 側(cè)用同一個 Elliptic 曲線算法庫驗一遍簽名鴻蒙側(cè)再驗一遍兩邊結(jié)果必須一致。這個測試看起來簡單卻能提前避免很多上鏈后“簽名無效”的悲慘事故。3.4 網(wǎng)絡(luò)層接管與消息廣播ton_dart 默認的網(wǎng)絡(luò)請求能力在普通 Flutter 工程里是夠用的但在鴻蒙化之后我更建議把網(wǎng)絡(luò)請求也統(tǒng)一收口到鴻蒙原生側(cè)來做。原因有幾點鴻蒙系統(tǒng)網(wǎng)絡(luò)棧更擅長處理系統(tǒng)級證書策略鏈上接口經(jīng)常返回較大的 JSON 數(shù)據(jù)原生側(cè)解析效率更好最重要的一點是TON 網(wǎng)關(guān)接口要求 POST 二進制 BOC 數(shù)據(jù)內(nèi)容類型和長度控制得非常嚴(yán)格原生側(cè)更容易確保請求頭的準(zhǔn)確組裝。我在鴻蒙側(cè)封裝了一個通用的請求方法專門負責(zé)和 TON 生態(tài) HTTP API 網(wǎng)關(guān)打交道的 POST/GET 調(diào)用。Dart 側(cè)需要發(fā)交易時傳入已經(jīng)在 Dart 層構(gòu)造好的 BOC 字節(jié)流鴻蒙側(cè)追加 API Key如果有和 Content-Type發(fā)起網(wǎng)絡(luò)請求后把響應(yīng)字節(jié)原樣返回 Dart。這樣 Dart 側(cè)保持對 ton_dart API 的調(diào)用習(xí)慣原生側(cè)掌控連接生命周期和錯誤重試。實測下來這種拆分比 Dart 直連穩(wěn)定得多尤其在弱網(wǎng)切換場景下表現(xiàn)差距尤為明顯。4. 資產(chǎn)掌控實戰(zhàn)查詢、轉(zhuǎn)賬與代幣識別4.1 地址解析與余額查詢資產(chǎn)操作的第一步是余額查詢。TON 的地址有兩種表示友好地址和非友好地址。日常用戶看到的是以EQ或UQ開頭的友好地址但內(nèi)部編碼和合約間通信有時需要非友好形式。ton_dart 自帶地址類的解析和轉(zhuǎn)換這部分完全可以直接保留。余額查詢走的是 TON 生態(tài)通用的 HTTP API 網(wǎng)關(guān)請求參數(shù)是地址返回結(jié)果里有一個balance字段單位是 nanoTON也就是 10 的 9 次方分之一 TON。換算關(guān)系并不復(fù)雜但要提醒的是TON 的精度是 9 位小數(shù)很多新手會把 nanoTON 當(dāng)成 18 位精度來處理導(dǎo)致展示金額差出 10 的 9 次方倍這在資產(chǎn)展示場景里是非常嚴(yán)重的低級錯誤。我在橋接層里順手加了一個保留 9 位精度的小數(shù)格式化工具避免上游返回的字符串在 JavaScript 或 ArkTS 的浮點轉(zhuǎn)換里丟精度。鏈上余額查詢還有個細節(jié)剛部署的錢包合約和已經(jīng)收過資產(chǎn)的錢包初始狀態(tài)不一樣。未激活的錢包地址在部分網(wǎng)關(guān)接口上會返回空余額或者空交易列表這種情況會在 UI 上表現(xiàn)為“查不到資產(chǎn)”其實是合約尚未激活。正確的做法是把它當(dāng)作余額為 0 處理并提供“首次轉(zhuǎn)入激活”的提示。4.2 Jetton 代幣與錢包內(nèi)資產(chǎn)識別除了原生 TON 幣鏈上資產(chǎn)里更多的是 Jetton 代幣你可以把它理解為 TON 生態(tài)里的可替換代幣標(biāo)準(zhǔn)。ton_dart 提供了 Jetton 相關(guān)的錢包和元數(shù)據(jù)解析邏輯拿到一個 Jetton 錢包地址后可以向鏈上合約發(fā)起一個只讀查詢拿到它的余額和掛在元數(shù)據(jù)里的代幣符號、精度和小數(shù)位數(shù)。這里最容易踩坑的是元數(shù)據(jù)格式。Jetton 的元數(shù)據(jù)可能是鏈上全量存儲也可能只是一個指向中心化服務(wù)器的鏈接即 off-chain metadata。如果元數(shù)據(jù)是 off-chain 的那么解析時要額外發(fā)一次 HTTP 請求去拉取 JSON而且這個請求在鴻蒙環(huán)境下同樣要走網(wǎng)絡(luò)權(quán)限和證書棧。我建議把元數(shù)據(jù)解析單獨封裝成一個可以容錯的模塊拿到必要字段就展示拿不到就顯示默認占位符而不是讓整個資產(chǎn)列表因某一個代幣元數(shù)據(jù)異常而卡死。在資產(chǎn)列表中我還把所有代幣的余額統(tǒng)一轉(zhuǎn)換成以 TON 為單位的字符串來展示內(nèi)部用整數(shù)類型保留精度。浮點型在跨語言橋接里真的不能碰哪怕一次毫秒級的精度偏差在資產(chǎn)核對時都會變成可信度災(zāi)難。4.3 轉(zhuǎn)賬消息構(gòu)造與廣播在 ton_dart 里構(gòu)造一筆 TON 轉(zhuǎn)賬本質(zhì)上是構(gòu)造一條內(nèi)部消息指定接收地址、轉(zhuǎn)賬金額、附加備注再把它塞進發(fā)送方錢包合約的 outgoing message 中整個消息經(jīng)過簽名和打包變成一個可以被網(wǎng)關(guān)接受的 BOC。這段邏輯屬于 ton_dart 的精華適配時完全保留我做的只是把簽名和網(wǎng)絡(luò)廣播兩個環(huán)節(jié)替換成鴻蒙能力。一筆轉(zhuǎn)賬消息的完整調(diào)用鏈大致是// 構(gòu)造內(nèi)部消息 final internalMsg InternalMessage( dest: destAddress, value: TonCoins.fromNano(amountNano), body: TextMessageBody(text: memo), ); // 用錢包合約邏輯添加簽名 final wallet WalletV5(secretKey: secretKey); final externalMessage await wallet.createTransferMessage( messages: [internalMsg], seqno: seqno, ); // 序列化為 BOC final boc externalMessage.toBoc();拿到boc字節(jié)后Dart 側(cè)通過橋接層把它交給鴻蒙原生由原生側(cè)以 POST 方式廣播到 TON 網(wǎng)關(guān)接口提交成功后網(wǎng)關(guān)會返回交易哈希。注意TON 的交易廣播是“異步確認”的接口返回哈希只代表網(wǎng)絡(luò)接受了這個包不代表交易已經(jīng)上鏈UI 層面必須區(qū)分“已廣播”和“已上鏈”兩種狀態(tài)否則用戶會誤以為轉(zhuǎn)賬一定成功。5. TON 治理實戰(zhàn)精密提案與鏈上投票5.1 從技術(shù)視角理解 TON 鏈上治理說到 TON 治理很多人第一反應(yīng)是“和現(xiàn)實世界里的投票有什么關(guān)系”。其實鏈上治理完全是一個技術(shù)流程網(wǎng)絡(luò)的重要參數(shù)、協(xié)議升級、提案的執(zhí)行都由一組智能合約定義持幣者或驗證者通過向這些合約發(fā)送特定編碼的消息來表達自己的態(tài)度。對普通用戶來說參與治理的動作往往就是“對某個提案投一票”而這一票本質(zhì)上是一條結(jié)構(gòu)嚴(yán)格的消息。這套機制天然符合“鴻蒙級鏈上專家”的主題。一個真正有用的鴻蒙錢包不應(yīng)該只做轉(zhuǎn)賬還應(yīng)該讓用戶在手機端直接讀取提案、構(gòu)造投票消息、完成簽名和鏈上提交。ton_dart 對這部分的支持主要集中在 Cell 構(gòu)造和消息簽名上而治理提案的讀取則依賴鏈上數(shù)據(jù)接口和合約狀態(tài)解析。5.2 提案讀取與狀態(tài)解析讀取治理提案時一般有兩個數(shù)據(jù)來源一是鏈上合約存儲的提案數(shù)據(jù)二是索引服務(wù)整理的提案列表。前者更原始后者更友好。我的做法是在 Dart 側(cè)用 ton_dart 的合約調(diào)用封裝請求鏈上提案狀態(tài)再把返回的 Cell 數(shù)據(jù)映射成結(jié)構(gòu)化的提案對象。提案對象至少包含提案編號、提案哈希、經(jīng)過時間、投票狀態(tài)、相關(guān)合約地址這些字段。解析過程中最容易出問題的是“提案編號”和“提案哈?!钡念愋吞幚?。它們可能是大整數(shù)或者二進制哈??缯Z言傳輸時如果走 JSON 字符串接口一定要明確規(guī)定編碼格式我用的是小端十六進制字符串統(tǒng)一表示兩端各自解析避免出現(xiàn)“0x 到底要不要帶”之類的低級分叉。另外提案投票窗口是有時間限制的鏈上判斷是否在窗口內(nèi)完全依賴時間戳。時區(qū)換算這類問題在鴻蒙原生側(cè)有時會受系統(tǒng)時區(qū)設(shè)置影響我建議統(tǒng)一使用 UTC 時間戳在 Dart 側(cè)做窗口判斷不要在原生側(cè)依賴本地時區(qū)字符串。5.3 投票消息構(gòu)造與簽名上鏈投票消息的構(gòu)造邏輯可以概括成三步把投票意向編碼進一個 Cell用簽名密鑰對該 Cell 的哈希做 Ed25519 簽名再把簽名和消息主體一起打包成外發(fā)消息。ton_dart 里已經(jīng)提供了通用的 Cell 構(gòu)造方法我們只需要按具體治理提案的規(guī)范填字段。為了節(jié)省你們查文檔的時間我整理了一個通用的投票流程偽代碼// 填入投票目標(biāo)合約地址 final targetAddress Address.parse(proposalContractAddress); // 構(gòu)造投同意票的行為體 final voteCell beginCell() .storeUint(voteOptionCode, 32) // 投票選項編碼 .storeUint(proposalId, 64) // 提案編號 .storeAddress(walletAddress) // 投票人地址 .endCell(); // 用錢包簽名并在外層包裝 final signedCell await signCell(voteCell); final externalMessage await wallet.createTransferMessage( messages: [ InternalMessage( dest: targetAddress, value: TonCoins.fromNano(voteFeeNano), body: signedCell, ), ], seqno: seqno, );這里有個實戰(zhàn)心得提案合約往往對消息體有嚴(yán)格格式要求任何字段順序錯位都可能導(dǎo)致鏈上解析失敗而鏈上錯誤往往不會給出明確的“字段錯位”提示只會顯示一個通用的失敗狀態(tài)。所以務(wù)必在公司內(nèi)部側(cè)提供一個“解碼回顯”的調(diào)試工具把構(gòu)造好的消息再從 BOC 反解回字段文本肉眼確認沒有問題再廣播。我在模擬項目里就是靠這個工具定位了好幾處字段順序的問題。投票上鏈之后還可以通過提案合約的只讀接口查詢投票結(jié)果權(quán)重。這個過程同樣可以封裝成鴻蒙應(yīng)用里的一個獨立模塊用戶投完票立刻能看到當(dāng)前累計結(jié)果體驗會比單純的廣播返回好很多。這種“簽名-提交-回讀”的閉環(huán)才是把一個普通錢包升級成鏈上治理工具的關(guān)鍵。6. 常見問題與排查技巧實錄6.1 高頻問題速查表適配過程中踩過的坑五花八門我整理了一個高頻問題對照表如果你在實操中也遇到類似現(xiàn)象可以直接照著查。現(xiàn)象根因解決辦法依賴解析失敗ton_dart 版本與本地 Dart SDK 不匹配先升級 Flutter/Dart 基線再重新 pub get廣播 BOC 時報數(shù)據(jù)無效跨語言傳二進制時被轉(zhuǎn)成字符串丟字節(jié)橋接層全程使用字節(jié)數(shù)組禁止中間字符串化簽名結(jié)果驗簽失敗簽名輸入不是 32 字節(jié)原始哈希檢查取哈希流程確認結(jié)果是 Uint8List(32)余額顯示差 10^9 倍精度單位誤當(dāng) 18 位處理統(tǒng)一按 nanoTON 解析保留 9 位小數(shù)助記詞生成后無法導(dǎo)入隨機熵沒有通過安全隨機源產(chǎn)生固定使用鴻蒙原生隨機數(shù)為熵源提案投票一直失敗消息字段順序或類型編碼不一致構(gòu)造后先解碼回顯再用測試網(wǎng)驗證網(wǎng)絡(luò)請求偶發(fā)超時Dart http 連接池與鴻蒙網(wǎng)絡(luò)棧兼容問題改由鴻蒙原生網(wǎng)絡(luò)棧統(tǒng)一發(fā)起網(wǎng)絡(luò)請求這張表在我的適配筆記里作用非常大相當(dāng)于一份速查清單每次聯(lián)調(diào)出現(xiàn)異常時我基本都先用這個清單排除掉最基礎(chǔ)的問題再深入到具體的協(xié)議細節(jié)里。6.2 三條值得記住的避坑經(jīng)驗第一不要試圖在 Flutter 的 isolate 里直接消費 ton_dart 的完整 BOC 解析能力去處理超大的鏈上消息。Dart isolate 的線程模型和鴻蒙側(cè)的原生線程調(diào)度方式存在差異大對象在 isolate 間復(fù)制時會有不可控的延遲和內(nèi)存峰值。對于消息構(gòu)造、簽名這類高頻且對延遲敏感的操作盡量保持在主 Isolate 或者原生側(cè)完成不要為了“不卡 UI”而盲目丟給后臺 isolate。第二字節(jié)序問題比想象中更陰險。TON Cell 里很多字段按位存儲跨語言讀取時Bit 的排列順序和字節(jié)序不是同一個概念。我第一次適配時只檢查了字節(jié)數(shù)組的長度沒有檢查位級序列化邊界結(jié)果在真實提案數(shù)據(jù)解析時多讀了一個 Bit導(dǎo)致整個后續(xù)字段錯位。排查了將近一晚上最后是拿一個已知正確結(jié)構(gòu)的 Cell 做了逐 Bit 對照才找到問題。建議所有字段編解碼測試都準(zhǔn)備一個“黃金樣例”用已知輸入輸出對來驗證。第三測試網(wǎng)絡(luò)和主網(wǎng)絡(luò)的數(shù)據(jù)要嚴(yán)格隔離。鴻蒙應(yīng)用如果同時支持測試網(wǎng)和主網(wǎng)最容易出現(xiàn)的問題是簽名消息在測試網(wǎng)驗證通過切到主網(wǎng)環(huán)境就因為合約版本不一致直接失敗。我在配置里把網(wǎng)關(guān)地址、合約版本、網(wǎng)絡(luò)代號全部做成了運行時參數(shù)并且給每一個資產(chǎn)信息和投票入口都打上網(wǎng)絡(luò)標(biāo)記從源頭上避免用戶誤操作。我個人實際用下來的感受是鴻蒙化 ton_dart 這件事最難的地方不在 TON 協(xié)議本身而在于你對兩個生態(tài)各自邊界是否足夠清楚。誰負責(zé)純邏輯誰負責(zé)系統(tǒng)能力邊界一旦劃清了工作量大頭就只剩橋接層的聯(lián)調(diào)。最后再分享一個小技巧適配完成后先做最小閉環(huán)驗證從“生成助記詞 - 本地簽名 - 構(gòu)造消息 - 廣播測試網(wǎng) - 回讀確認”五步走通再往錢包頁面、治理模塊、資產(chǎn)列表這些功能上鋪開。比一上來就接一堆特性要穩(wěn)妥得多排查問題時也能把變量壓縮到可控范圍。后續(xù)如果你想在這個基礎(chǔ)上擴展可以考慮接入去中心化交易所的聚合跳轉(zhuǎn)、多簽錢包或者更深度的 Jetton 跨合約交互這些在 ton_dart 的協(xié)議層里都已經(jīng)鋪好了地基。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
激情小说五月天| 色婷亚洲| 97干网站| 日本颜色视频人人爱| 第四色激情网| 国产无人区大片| 99久久婷婷| 日本va欧美va欧美精品88| 成人噜噜网| 久草五月丁香婷婷综合| 中文字幕视频色婷婷| 999婷婷综合| 亚洲亚洲永久无码777777| 无码九九| www.粉嫩av.com| 成年视频免费观看| 超碰成人在线免费观看| 狠狠五月婷婷| 成人av在线网| AA片在线观看视频在线播放 | 亚洲日韩一页精品发布| 久久婷婷综合五月天| 久久综合香蕉国产国产蜜臀AV| 99视频内射三四| 婷婷色成人| 激情五月综合六月丁香婷婷狠狠干| 丁香婷婷五月人体| 五月丁香婷婷激情四射迷人| 五月婷无码| 综合激情婷婷| 天天日日夜夜| 麻豆AV一区二区三区| 91色操| 日日操夜夜骑| 激情五月天婷婷| 99久久大片| 色五月激情基地| 亚洲激情综合色站| 欧美99热| 99综合一区| 另类婷婷丁香| 伍月婷丁香花全集| 激情婷婷啪啪| 骚五月婷婷| 丁香五月天堂网| 99色视频| 五月婷婷久久久| 丁香婷婷91在线观看视频| 丁香五月六月综合激情| 成人色图情色成人网 www.5b5b5bcom 五月天| 色偷偷狠狠| 天天 青草 丝袜制服 在线| 五月丁香久久久日婷婷久久婷婷日| AV中文在线| 丁香激情网| 婷婷午夜精品久久久| www色综合亚洲92| 五月开心啪啪| 久久99久久久久久| 九月婷婷丁香| 日日天天干| 九九热在线99| 99精品在这里| 超PEN精品在线| 亚洲婷婷性爱| 丁香五月婷婷激情尤物| 欧美天天爽| 人人玩人人橾| 欧美草久久五月天91| 华人在线免费| 97在线视频观看| 黄网免费看| 五月婷婷六月丁香综合| 99精品偷自拍| 99免费在线视频| 人妖色AV色综合| av在线免费网站| 色丁香五月| 久久精彩综合视频| 亚洲激情精品| 激情综合久久| 超碰九热| 中文网AV| 五月丁香在线婷婷美女| 99人碰碰碰| 激情五月婷婷| 色婷婷综合丁香五月天| 99热热九九| 精品三区影院| 欧美日韩aaa| 我淫我色婷婷五月天激情四射| www.韩日视频| 色婷丁香五月| 五月天色影院| 国产AV一区二区三区最新精品 | 五月丁香婷婷色色| 色五月在线视频观看| 天天干天天操天天射| 亚洲人妻av| 婷婷色综合| 思思热99er| 91人操人人人操人| 五月丁香狠狠| 丰满人妻一区二区三区| 久久免费操| 亚洲五月天综合色| 狠狠人妻色综合| 色五月激情五月| www.久9| 超碰99在线| 亚洲精品久久久久久久久久吃药| 99热免费在线| 踪合专区啪啪| 五月婷婷六月奇米网丁香| 日本天堂免费99| 久久女婷| 国産精品| 九九無妻| 97成人视频| 日韩亚洲视频| 国产精品国产| 国产亚洲成AV人片在线| 国产精品久久久60086| 曰曰久久| 琪琪色热色色| 久久婷婷六月综合综合色| 思思热精品在线视频| 婷五月天影院| 影音先锋 91工厂| 丁香五月激情啪| 婷婷六月激情综合| 成人婷婷深爱综合网| 天天做天天爱天天玩| 三级片AAA久久久AAA久久久AAA| 久久9精品视频| 婷婷五月综合在线视频| 99热这里是精品| 婷婷五月丁香花综合| 国产在线另类五月婷婷| 亚洲日韩乱码一区二区三区四区| 婷婷丁香六月五月天| 婷婷婷婷婷婷婷婷| 亚洲AVwwwwwww| 五月情婷婷五月| 丁香六月啪啪啪| 亚洲美女裸体被操在线观看| 狠狠色无码| 婷婷99狠狠躁天天躁| 久久久婷婷色五月资源网| 丁香五月宝贝激情网| 精品久久9| 97久操视频| 天天激情| 5五月综合网亚洲| 99日这里只有精品| 人人操人人妻| 色婷婷成人五月| 亚洲欧洲中文日韩久久AV乱码| 亭亭色色五月天| 五月天偷拍| 久久久潮喷-久久久九九-成人AV| 婷婷色五月色| 日本99视频精品免费播放| 色婷婷色五月天| 这里只有精品96| 996er在线观看| 激情婷婷五月天| 亚洲激情视频在线观看| 狠狠操狠狠操AV| 色999亚洲人成色| 婷婷丁香97| 91九色丨国产丨爆乳| 五月丁香六月激情综合| 高清不卡一区| www.色婷婷.com| 人妻爽爽爽久久久久久久久| 中国丰满熟女A片免费观| aaaaaa片| 东京热人妻一区二区三区在线| 午夜婷婷五月天在线| 久久ri精品| 婷婷六月天亚州| 青青久久91| 成年人看Va免费视频| 热久久这里只有三级视频| 五月婷婷丁香瑟瑟视频| 色婷婷88| 五月丁香六月激情综合| 色五月丁香六月欧美综合| CAOBIBI| 亚洲热综合| 亚洲综合另类| 国产67194| 丁香六月婷婷五月天| 色婷婷av在线观看| 五月天久久丁香| 91趴趴| 婷婷 伊人 久久| 婷婷欧美综合| 久久精品99国产精品日本| 狠狠狠狠狠操| 激情AV在线| 99精品视频免费观看| 色七色九九| 色婷婷成人色网| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | 色婷婷AⅤ| 亚卅毛片| 另类激情五月| 五月丁香久人妻中文| 色吧综合网| 99re在线观看视频| 久久视频婷婷| 色色欧美色色色| 五月丁香婷婷综合视频| 久久精品爱爱| 色色色色色色五月婷婷| 99精品久久| 天天爽夜夜爽| 亚洲高清在线| 国产黄色一级片| 人人摸人人搞| 五月天婷婷爱| 婷婷久久视频| 国产成人综合在线| 97久久精品视频| 午夜免费试看| 色五月色五天免费视频| 婷婷五月天伦理| www.99热这里精品| 搡BBBB搡BBB搡18 | se99视频| 日韩一级网站| 色综色五月天婷婷| WWW丁香五月| www.爱婷婷.com| 欧美丁香婷婷五月| 五月丁香婷婷视频| 天天爽天天摸| 日韩成人五月天| 亚洲人人操| 搡BBBB搡BBB搡18| 欧洲色| 一夜福利不卡| 久久99精品九九久久久婷婷| 日韩无码91| 疯狂做受XXXX高潮A片| 六月婷婷色综合| 亚色网站小视频| 国产精品国产| 手机在线视频观看9| 九色PORNY9l原创自拍| 婷婷婷婷婷婷婷婷| 人妻久久久久久久久久久| 久久网站免费亚洲| 婷婷放心五日爱| 色婷婷瘦婷婷日韩| 婷婷综合九月| 久久码久久无清| 荡乳尤物3HP1V5| 91丨九色丨丰满人妖| 五月天激情.com| 秋霞免费三级片| 97黑人精品区| 天天干,天天操,天天射| 五月丁香天堂| 久久久五月天婷婷成人网| 欧美色综合天天久久综合精品| 97久久人人| 情趣视频66| 丁香婷婷五月六月天| 中文字幕婷婷五月天| 91无码视频| 国产操逼网站| 婷婷伊人75| 激情精品久久| 婷婷五月成人社区| 色色色色色色色五月| 精品一二三区久久AAA片| 婷婷色丁香五月| 99热这里只有精品4| 六月狠狠综合| 拳交大逼| 丁香五月影院| 六月婷婷av| 无码99| 四色99久久| 五月激情丁香| 丁香六月激情国产| 五月天婷婷AV| 九九热视频99| 大香蕉av在线| 婷婷五月色| 色婷网| 久久五月天婷婷| 婷婷五月天开心网| 另类少妇人与禽zOZZ0性伦| 色情五月丁香| 国产欧美日韩综合精品一区二区| 久久九九热38| 成人啪啪色婷婷久| 国产成人AV在线| 久热九九| 色五月激情五月| 五月丁香综合激情| 久久五月婷综合| 99九九精品视频推荐| 久婷婷视平| 伊人激情网| 亚洲成人av在线播放| 啪啪黄页网| 久久艹99| 天天肏屄夜夜爽| 五月天第四色开心色播| 天天射影视综合网| 伊人婷婷色| 国产成人网| 久9视频| 全部老头和老太XXXXX| 99热 日韩| 色色网91| 日韩好吊操| 欧美综合激情五月| 国产.亚洲.欧洲视频在线| 九九热av| 五月婷婷啪啪啪啪| 婷婷五月色综合| 在线播放中文字幕| 色婷婷在线视频综合| 国产五月天欧美色| 色综合99| 婷婷五月日本| 色情五月天视频网| 五月婷婷综合在线视频小说| 婷婷综合激情| www.99操| 婷婷丁香77777| 天天爽综合| 亚洲色热| 中文幕无线码中文字蜜桃| 亚洲天堂九九九| 人人摸人人操人人爽| 2020久久婷婷五月| 亚洲操逼片| 风流少妇A片一区二区蜜桃| 五月丁香久久色| 丁香五月激情六月欧亚激情综合导航| 丁香五月六月激情久久| 久久五月丁香| 丁香六月| 婷婷丁香五月欧美人| 97超碰在线免费观看| 天天干天天做| 99热碰碰热| 丁香五月激情六月综合| 综合色99| 日韩久综合| 快乐婷婷五月天| 婷婷伊人五月天| 免费亚洲婷婷| 99久久99久久| 婷婷五月天堂| 666555。COm毛片| 91要啪| 五月天激情综合10p| 任你爽视频| BlACKEDRAW视频一区二区| 五月天婷婷色色| 91人人爽久久涩噜噜噜| ..真实国产乱子伦对白在线_欧| 丁香婷婷色情| 丁香五月天啪啪a日本| 国产日比| 久婷婷| 亚洲欧美国产高清vA在线播放| 超碰99在线观看| 久草a片| 日本激情五月| 麻豆WWWCOM内射软件| 久久与婷婷| 激情五月四色| 九月婷婷在线视频| www.五月婷婷久久.com| 久久人人妻| 国产九九一区二区三区| 久久99热久久99精品| 久碰视频| 五月六月丁香激情视频| 91超级碰| 黄色三级日本| 婷婷五月丁香综合| 99A级片| 99热最新| 碰碰碰97免费精彩视频| 99热这里只有免费| 99色在线观看视频者| 第2色五月婷| 五月婷婷色情| 久久丁香五月天| 99精品在线观看视频| 碰碰碰91| 国产午夜精品一区二区| 久9免费视频| 色情成人五月天| 天堂美国久久| 五月天基地| 韩国中文字幕91| 五月停停直播| 久久中文网| 五月五丁香婷婷| 无码日本精品XXXXXXXXX | 丁香五月在线伊人| 蜜桃五月天| 五月天激日本色情在线| 国产肥白大熟妇BBBB视频| oumeisesewang| www.色婷婷| 色婷婷五月天激情在线播放| 狠狠婷婷色| 欧洲综合色| 婷婷五月天桃花网| 婷婷婷婷婷开心无码播放| Caoporn公开| 成人丁香婷婷| 日本美女上人| 狠狠色丁香| 丁香丁香激情网| 青青青在线视频国产| 99热日本| 综合超碰熟| 激情五月天婷婷| 91网站黄| 白人荫道BBWBBB大荫道| www.亭亭五月天| 99热www| 欧美激情综合色综合啪啪五月| 97在线刺激| 91丨九色丨大屁股| 狠狠色丁香婷婷基地| 亚洲综合网在线| 99国产性感视频| 亚洲成人av在线观看| 五月婷婷综合在线| 天天综合色丁香| 亚洲精品白浆高清久久久久久| 久热这里只有精品66| 九九Y精品热播| www.五月丁香| 天天综合插插| 久久婷婷五月综合啪| 亚洲操逼网| 日 日干 日日做| 五月婷性爱| 九九精品热播| 婷婷丁香五月激情中文字幕版| 97人碰人操| 丁香五月偷拍| 人妻系列久久久久久久久久久| 影音先锋五月婷婷| 丁香五月婷婷啪啪| 这里只有精品69| 色九九九九| 天天爱天天操| 六月综合婷婷开心伊人| 婷婷五月激情六月丁香| 91丨九色丨老农村| 大陆极品少妇内射AAAAAA| 久久久精品色色色| 天天玩天天摸| 一区中文字幕电影| 婷婷色综合| 五月婷婷在线免费| www。五月天。com| 大香蕉五月天婷婷| 九九精品婷| 亚洲免费婷婷| 99色在线视频| 99精品久久久久久久婷婷久久| 伊人婷婷综合| 久草婷婷在线| 日本五月视频| 天天爽天天爽天天爽天天爽天天爽天天爽天天 | 婷婷丁香六月影视| 玖玖爱资源站| 久久天堂色| 狠狠综合网| 久久99热免费最新版| 久去色色| 久婷首页| www色哟哟| 五月天综合在线| 亚洲最大视频| 五月婷婷久草在线视频综合| 色爱综合视频| 99 re视频一区| 天天色中文字幕女优AV| 99热| 99视频在线| 天天做天天爱| 噜噜噜久久亚洲精品国产品91| 五月天婷亚洲天综合网综合| 五月丁香啪啪激情| 996精品热视频| 97人碰人操| 丁香婷婷色五月| 欧美日韩成人在线观看| 日韩三级高清无码| 久久婷婷激情视频| 日日操天天爽| 天天色天天爱天天爽| 日韩抽插操逼| 婷香五月网在线| 久月婷婷| 久九色| 91在线日本| 操碰99在线视频观看| 欧美成人精品A片免费一区99| 97操操| 色色五月天丁香| 五月天婷婷7米| 五月婷婷啪啪啪啪| 婷婷激情社区| 婷婷丁香五月激情| 久久婷婷视频| 91精品久久久久、久五月天| 操一操干一干| 色五月婷婷五月天| 五月丁香啪综合| 99热日| 婷婷色片| 九九99免费理论| 色婷婷六月天| 91精品久久久久久综合五月天| 国产精品国产| 九九热欧美| 亚洲综合1024| 丝袜大香蕉| 97操碰碰无码视频| 久热这里只有精品99re | 91在线观看www| 亚洲天堂碰碰婷婷| 人人插9| 久久超视频| 91久久九久久九久久九久久九久久 | 婷婷五月天av| 久久人妻久久| 四色永久成人网站| 丰满少妇乱A片无码| 91久久精品国产91性色TV| 激情又色又爽又黄的A片| 国产亚洲精品久久久久久郑州| 久久综合婷婷| 婷婷色色综合| 色站9/| www.婷婷,com| av中文在线| 99在线观看精彩视频| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 色播六月| 精品影院| 九月av在线| 色噜噜夜夜夜综合网| 久久精彩免费视频精彩免费视频| 亚洲丁香五月综合| 99热视精品| 色色亚洲视频| 五月天色五月| 婷婷六月香| 在线成人视频免费| 久久五月天大美女| 久久精品亚洲一级牲爱综合| 婷婷五月大香蕉| 天天插天天射| 9l视频自拍九色9l黑人| 色婷另类| 天天摸夜夜爽天天做| 久久丁香五月婷| www.久久爱.com| 婷婷99狠狠| 亚洲成人日韩无码精品| 97香蕉久久超级碰碰高清版| 夜夜爽天天| 99色最新在线视频网站| 日本三级大片| 久色大香蕉| 五月天激情影院| 天天碰天天插天天操| 六月婷婷视频| 色天堂婷婷| 99九九视频| 中文字幕+乱码+中文字幕在线观看| 五月丁香激情深爱婷婷| 久久久久9999| 97偷拍在线视频| 天天干,天天舔| 欧美婷婷色五月| 丁香六月情| 色9999综合久久| 天天玩夜夜操天天爽| 五月天成人在线播放丁香| 丁香九月婷婷综合| 国产女人十八水真多1| 超碰AV在线| 欧美激情综合色丁香婷婷五月天| 在线观看中文字幕| 综合www色| 成人婷婷深爱综合网| 婷婷久久五月天丁香| 青青草伊人婷婷| 成人片在线播放| 婷婷金品综合视频| 日韩久久成人| 播五月婷婷开心| 丁香婷婷激情| 91在线资源| 色久婷婷网| www.五月天婷婷| 99久久超级| 六月丁香激情综合网| 色停停五月,在线观看| 激情小说五月天| 久99在线视频| 十一月婷婷激情四射| 色吧婷婷五月亚洲| 婷婷五月天在线观看av| XX色综合| AV在线免费播放| 热99在线| 日本A片一区| 国产寻花在线| 99热在线观看| 免费色色色| 激情五月天视频| 91一道本| 毛片色五月| 丁香五月综合狠狠| 亚洲另类婷婷五月综合| 偷偷与邻居做爰完整视频| 九九国产视频| 九九av| 色狠狠综合网| 色色五月天网站| 成人在线网站| 五月丁香啪啪啪| 97婷婷丁香五月天激情图片| 婷婷丁香成人五月天| 五月天丁香婷婷视频网址 | 色色九九五月天| 日本天天色| 国产婷婷久久| 天天噜| 伊人综合婷婷| 成人丁香色| 六月丁香色色色| 五月精品| 99亚洲视频| 久久婷婷久久| 色婷| 99这里有精品| 激情五月六月婷婷综合啪啪| www,999日本色| 蜜乳A√| 激情婷婷丁香| 久久综合丁香激情五月| 亚洲XX网| 五月天激情亚洲| 激情网站五月| 亚洲熟妇AV乱码在线观看| 天天射影视综合网| 婷婷亚州综合| 日韩成人AV在线播放| 97在线精品视频| 五月婷婷中文| 九九在线免费观看| 狠狠色丁香久久综合婷婷亚洲成人福利 | 中文网av| 激情 婷婷| 婷婷久久亚洲| 天天更新天天亚洲| 五月丁香婷婷欧美色图视频五月丁香777电影 | 99色色网| 韩国三级五月天婷婷。| 五月婷婷色啪| 婷婷亚洲综合| 色五月天在线| 在线视频99| 亚洲热视频在线| 丁香五月激情婷婷激情| 九九精品婷| 久久九九爽| 亚洲久久视频| 色婷婷五月综合色婷婷| 婷婷五月天激情小说| WWW.激情| 成人无码中文| 丁香桃色网| 99色看| 99九九热视频| 99热综合| 久久综合人妻| 噜噜色五月| 日本91在线播放| 日韩综合久| 久久这有这里精品| 最新AV在线观看| 伊人激情影院| 丁香美女主播视频在线观看| 91九色视频| 日本操天堂| 婷婷操超碰| 色五月丁香激情| 亚洲有码在线视频| 午夜69成人做爰视频| www五月天com| 五五月丁香花激情综合网| 丁香熟女乱| 9色在线| 亚洲激情五月| 色婷婷4| 啪啪丁香五月| 99热最新国内| 天天插天天插| 久久怡红院| 丁香5月啪啪| 熟女激情网| 97日本在线播放| 婷婷丁香人妻天天爽| 深爱激情丁香五月| 五月丁香va| 草一草avb| 亚洲视频在线网| 激情丁香五月婷婷| 五月丁香六月色| 日日撸日日操| 激情婷婷综合| 日本色色图| 色99视| 丰满少妇猛烈A片免费看观看| 超碰人人艹| 色五月天婷婷| 这里只有精彩视| 中文久久久人妻| 五月婷中文字幕| 日本97在线看片| 成人无码髙潮喷水A片| www久久99| 精品久久这里热66| 五月花综合视频| 色欲丁香久久| 99热这里只有精品10| 99久久久久| 六月婷婷啪啪| 97艹| 五月天伊人久久| 久草x色在线观看99| 亚洲亚洲人成综合网络| 天天日,天天插| 久久久久网站| 天天插天天插| 九九视频在线| 日本在线va| 狠狠激情五月天| 这里只有免费的精品| 婷婷五月激情六月丁香| 99热这里只有精品268| 婷婷永久在线| 国产精品99久久久久久猫咪| 久人人操| 91久久九色| 碰超在线九色| 东京热人妻一区二区三区在线| 嫩草免费视频| 色综合网页| 色五月美女| av五月天婷婷丁香| 97色综合视频| 婷婷丁香先锋资源网站| 色综啪啪啪啪啪啪| 4399欧美另类视频| 狠狠色大香蕉| 99热e| 九九五月天| 日韩欧美五月丁综合| 婷婷丁香六月| 婷香五月网在线| sS丁香五月婷婷| 狠狠色丁婷婷日日,伊人激情综合网| 久久最新色色色| 日本激情ⅩXX免费视频| 操人妻90p| 婷婷五月深深的爱| 色婷五月丁香久亚洲| 婷婷五月天com| 亚洲丁香五月在线观看| 五月丁香色六月激情干大屄| 日本色婷婷| 久久人人超| 久久丁香五月| 日日影院 | 在线五月婷| 人人爽欧美婷婷久久久五月丁香 | 国产做A爰片毛片A片美国| 色偷偷AV亚洲男人的天堂| 激情五月婷婷老师| 最新久久99视频网站| 色www.con| 级情九色| 97干婷婷五月天| 综合五月天完整| 99热碰碰| 激情图片五月天| 国产成人综合亚洲| 十区av| 99久久亚洲精品视频| 99热国产国产| 日日狠狠久久偷偷四色综合免费| 女人被男人吃奶到高潮| 热99在线| www.金莲av| 99超级碰碰| 九九精品这里只有| 婷婷激情社区| 婷婷丁香久久| 五月婷婷 激情按摩| 日本丁香久在线| www久久99com| 99精色| 午夜大香蕉| 欧州婷婷五月天综合| 啪啪黄页网| 五月天第四色开心色播| 狠狠色综合久久| 五月天激情四射| 亚洲丁香五冃97色| 9191avse| 激情开心五月亚洲| 亚洲视频五区| 五月Huangsewang| 天堂在线9| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 六月婷婷激情| 五月天成人在线播放丁香| 影音先锋一区二区三区| 久久全意婷婷| 99婷婷| 天天摸色吧天天摸色吧| 激情影院丁香五月| 9伊人网| 五月婷婷,六月激情| 婷婷综合97| 97碰碰草| 俺来也综合网精品一区| 狠狠狠狠狠狠狠狠| av九九| 精品爆操| 天天日天天做天天操| www.91操| 91亚洲免费片| 2025天天爽天天摸| 亚洲情欲| 伊人婷婷91| 五月天激情无码高清| 久久9视频| 精品九九婷婷| 五月天婷婷乱| 这里有精品| 综合激情在线| 99热久| 久久综合五月天激情小说网站 | 97婷婷五月| 丰满女老板BD高清A片| AV在线大香蕉| 六月综合婷婷开心伊人| 亚洲 在线 另类| 永久的网站AAAA| 激情av在线| 操逼综合激情网| 六月丁香五月亭亭| 超碰99在线| 五月婷婷免费在线| 玖玖五月丁香| Av免费网站在线| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 夜夜操天天干| 五月丁香婷婷综合久久| 色色色com| 夜色爱爱亚洲| 五月婷综合网| www.色五月| 婷婷五月天美女| www.99久| 五月玖玖| 六月99天天婷婷激情综合| 亚洲综合成人网站| 婷婷五月天电影区小说区| 色婷网站| 另类小说婷婷色| 国产又爽又猛又粗的视频A片 | 热久久99热欧美国产亚洲| 五月天停停日日| 欧洲亚洲精品| 99热精品网| 久久99激情丁香婷婷小说网| 成人精品免费在线观看| 激情综合色婷婷啪啪六月天| 丁香五月婷婷图片综合| 这里只有国产精品在线| 亚洲在线免费成人| 99九九视屏| 大香蕉五月婷婷丁香| er99免费视频在线| 国产看真人毛片爱做A片| 色噜噜狠狠色综合日日免费| 中文字幕日产A片在线看| 色婷婷五月基地在线| 白人荫道BBWBBB大荫道| 亚洲综合婷婷五月| 男女激情久久| 五月婷婷在线播放| 九九激情视频| 色播五月综合网| 丁香五月日韩| 99免费| 久久杏爱视频| 中文字幕婷婷9月天| 中文字幕性爱丰满| 碰久久精品w| 操骚货在线| 久久九九玖玖| 国产亚洲在线观看| 国产五月丁香在线| 亚洲无AV在线中文字幕| 天天舔天天摸天天透| 31色区视频免费看| EEUSS鲁片一区二区三区| 激情综合在线观看| 九九aV| www,五月丁,com| 一区操| 色婷婷综合影院| 五月婷丁香| 99在线精品免费视频| www五月天激情com| www综合久久| 九九aV| 五月天亚洲最大成人| 日韩在线视频9色| 色婷婷小说网| 五月6香色婷婷视频| 91人在线观看| 青青草五月天| 五月激情丁香五月| 万月丁香狠狠爱| 射区导航| 五月婷婷深深爱爱| 色色色色色九九九九九| 丁香九月综合| 五月激情网五月综合网| 99热亚洲综合| 激情小说五月天| 色情久久久| 六月婷婷久久| 国产古装妇女野外A片| 青草激情综合| 大香蕉婷婷| 人妻免费网站| 超碰91在线| 婷婷狠狠五月综合| 99亚洲精品视频| 202丰满熟女妇大| 97色色色| 亚洲第一色色色色| 91色干| 五月丁香六月婷综合成人综合| 婷婷视频在线| 好好干Av| 人人操人人添人人摸97| 在线只有精品| 99re热视频这里只精品| 日本一级黄色电影| 婷婷五月另类网站| 可以直接看的AV| 五月天激情视频网站| 色色激情五月天| 97色一二三| 午夜一区| 久久99大全| 久久99色色| 天天做天天爱天天搞| 人人操人人添人人摸97| 色色色网站| 人人综合久| 天堂AV在线看| 婷婷久久午夜网| 九九九九大香蕉| 亚洲第一成人无码A片| 亚洲操逼片| 色噜噜狠狠插综合| 五月婷婷亚洲综合网| 超碰在线国产9| 影音先锋五月天婷婷丁香在线观看| 99视频内射三四| 九九婷婷五月天| 五月激情另类| 粉嫩av懂色av蜜臀av熟妇| 婷婷久久欧美| 久久综合久色欧美综合狠狠| 丁香六月啪| 噜噜国产| 六月色丁香中文字幕| 婷婷丁香六月五月天| 天堂在线9| 9色免费网| 久久婷婷五月天激情新地址| 欧美激情综合色综合啪啪五月| 五月天伊人| jiqingliuyuetian| 五月天色婷婷小说| 五月激情婷婷图片基地| 色99日韩| 九九亚洲无码| 一区无码| 婷婷在线日韩综合| 少妇被躁爽到高潮无码文| 九九久久综合| 99热久草| 久久综合影院| 丁香五月成人av| 色综合日日| 亚洲99视频| 人人舔人人色人人高潮| 亭亭丁香aV| 欧美日本VA| 五月丁香| 日韩成人精品中文字幕| 欧美va视频| 中文字幕97超级碰| 久久久五月天网站| 丁香五月婷婷欧美成人色图| 九色视频入口91| 亚洲一二三网| 免费日本aⅴ中文字幕| 五婷婷综合网| 久久婷婷综合五月| 99丁香婷婷综合网| 丁香五月婷婷图片综合| 亚洲av| 美女久久婷婷| 五月丁香久久久| 碰超亚洲| 久草婷妨| 色444综合网| 自拍视频在线观看9| 99ri视频在线观看| 91AV视频| 操久久精| 婷婷久久综| 91精品无码| 六月色婷婷色| 五月天激情国产综合婷婷婷就去爱| 99久久9| 蜜乳9188| 日本ww亚洲| 久久九精品| 激情五月天色婷婷| 亚洲色色香蕉| 天天舔天天摸| 超碰在线观看99| 99这里有精品| 日本熟妇乱妇熟色A片蜜桃| 亚洲电影在线观看| 大香蕉福利导航| 99免费青青蜜臀| 亚洲天堂啪啪| 日韩免费乱轮网站| 99er免费在线观看| 99色一| 色婷婷综合视频| 色色狼人综合| 亚洲五月天激情| 国产国产乱老熟女视频网站97 | 五月丁香色婷婷综合| 久久久久久人妻久久久久久久久久人妻久久久 | 婷婷色五月天第7色| 五月色丁香激情| 欧美成人色婷婷| 六月丁香啪啪啪| 亚洲第一综合| 草草色情综合网| 9超碰在线| 色综合久| 情情五月天色| 五月激情六月综合| 亚洲综合视频在线| 天天日天天插| 五月婷婷之综合激情在线| 色五月婷婷影视| 婷婷色在线| 色婷婷六月精品| 美欧成人视频| 五月天色五月| 五月婷婷先锋| 91热爆在线| 久久人妻情侣| 亚洲无码11| 国产乱妇无乱码大黄AA片| 久婷自拍视频| 五月伊人综合| 女人天堂 AV| 色婷婷久久| 婷婷丁香红五月91C| 色噜噜97视频在线观看| 热的国产,热的综合,热的有码| 婷婷五月天欧美图片在线播放电驴| 99色精品| 久久精品99国产精品日本| 色婷婷丁香社综合| 思思热思在线精品视频| 九九视频这里只有精品| www.操.com| Www.se.久久| 99热99网| 激情综合网五月| 婷婷色色五月天| 婷婷自拍| 深爱激情九九五月天 | 丁香五月激情图片婷婷| 99re视频在线播放| 激情五月婷婷色播网| 99九九精品| 色级婷婷| 亚洲激情网站无码| www.婷婷| 天堂在线观看视频| 狠狠做五月| 来吧亚洲综合网| 极品人妻VIDEOSSS人妻| 亚洲六月婷婷| 综合久久人妻| 韩国真做片在线观看| 日熟女| 欧美日本一区二区三区| 色99网站| 99热九九在线| 丁香六月激情蜜桃| 99热精品无码| 五月天停停日日| 婷婷丁香综合| 丁香五月综合| 激情综合婷婷| 五月天婷婷综合免费| WWW.久久.COM| 狠狠色丁香| 操九色| 狠狠色噜噜色狠狠狠综合色 | 99热97| 99操九九网| 亚洲avjiujiur91| 欧美日韩999| 超碰99热精品| 婷婷丁香五月综合网上 | 丁香五月婷婷久久久| 五月五丁香婷婷| 色5月婷婷| 美日韩成人| 91九色精品| 激情婷婷综合网| 色婷婷综合网站| 99re热视频这里只精品| 极品色丁香| 久久久激情视频| 夜夜躁婷婷AV| 99成人在线观看| 91主播在线| 激情小说 五月天| av操逼网| 久久精品小视频| 国产AV一区二区三区日韩| 欧美天天爽| 99免费在线| 亚洲精品影视| 婷婷丁香九月| 色欲婷婷五月天丁香| 深爱五月激情五月| 97AV人人插人人操| 婷婷五月激情五月激情| 超碰五月婷婷五月天| 亚洲第一综合| 伊人色欲五月天| 久草热久草在线视频| 五月色婷婷亚洲 | 久久综合五月天| 99re熱| 思思久久99| WWW,五月天| 色色99| 色婷婷内射| 五月丁香色色网| 丁香女人五月天| 香蕉久久国产AV一区二区| 六月丁香成人| 丰满女老板BD高清A片| 丁香六月av| 97丨九色丨国产丨PORNY| 米奇影视资源婷婷狠狠色激情欧美五月丁香| 熟妇人妻中文字幕无码老熟妇| 五月丁香婷婷激情在线| av网址在线播放| 99热亚洲精品66| 婷婷丁香www视频日本韩国| 综合噜噜| 婷婷五月综合色拍| 91狠狠综合久久久| 天天做天天爱天天摸| 亚洲亚洲人成综合网络| 五月婷在线色视频| 老司机视频lsj爱就色| 色色色色av色色色色| 色天堂97| 97精品综合| 色综合色综合色综合高潮| 亚洲无码影音| 亚洲天堂aaaa| www999日韩精品| 久久婷婷视频| 色婷婷五月网| 久久婷婷五月综合一| WWW.婷婷五月天.COM| 成人色五月天婷婷| 免费无码毛片一区二区A片| 婷婷爱五月天人人爱| 日韩无码人妻一区二区| 久操人妻| 管管補管管紱| 禁片二区| 亚洲成人av在线| 丁香五月 综合| 91a片爽| 色丁香五月| 安息电影在线观看完整版| 综合福利网| 婷婷五月天情色| 再綫Av免费視品| 1024AV视频| 五月久久婷婷| 熟女五月天久久综合| 丁香五月www| 99色综合| 噜噜噜精品欧美成人在线观看| 日韩在线成人电影| 五月丁香六月婷| 五月花综合视频| 丁香六月综合激情| a性生活久久无| AAA久久久| 五月天婷婷影院影院| 激情五月,激情综合网| 疯狂做受XXXX高潮A片| 六月激情久久| 777.色色| 超碰国产在线观看| 少妇高潮呻吟A片免费看软件| 色色色色网| 婷婷五月天 偷拍| 色日本综合| 99精品偷自拍|