【HarmonyOS】元服務卡片本地啟動拉起加桌沒問題,上架后拉起加桌時卡片展示異常

【關鍵字】

加桌選卡展示異常 、 2卡共用一個布局 、 代碼混淆

【問題現象】

元服務卡片在本地啟動拉起加桌時,多卡的選卡過程顯示是沒問題的。但是在上架后拉起加桌時,多卡的選卡過程卡片展示異常。

代碼邏輯是通過創建卡片的時候判斷卡片的尺寸大小,顯示對應的卡片。

當前異常的卡片是小卡片樣式問題。

cke_361.png

【問題分析】

  1. 排查系統版本是怎么獲取的。

    cke_4550.png

    獲取系統版本代碼是正確的。

  2. 檢查樣式和尺寸的代碼判斷邏輯是否正確。

    因為本地編輯器啟動后體驗是沒問題的。

  3. 檢查加桌卡片與元服務的最新版本是否一致,即同步更新了。

    從加桌彈框的右上角檢查確認卡片和元服務都是最新的版本號。

  4. 排查卡片生成邏輯。

    下圖onCreateFrom就是卡片生成邏輯。

    cke_9081.png?

  5. 抓取上架后的日志檢查這段判斷代碼邏輯是否存在。

    打開ap log,抓取hdc日志,抓取日志后,解壓hiapplogcat開頭的日志,找到操作時間點,就能看到具體日志。

    分析識別,在顯示更過服務卡片時,滑動到第三個卡片還是顯示1*2,不是應該的2*2,而且1*2樣式明顯與本地編輯器體驗不一樣。好像是因為1*2卡片顯示了2*2卡片的內容,導致了樣式問題。

    現網日志分析后,應用沒有給卡片提供mini數據導致view顯示不對,日志并未顯示“MainAbility-更新卡片...”那行打印,導致mini數據并未生效,繼續分析代碼,初步判斷是onCreateFrom中這行日志上方部分代碼導致更新數據未生效因為1*2卡片沒有收到數據,所以沒有任何更新,可能走到了默認下方mini false值里面去加載view。

【解決方案】

最終通過現網app包與debug包的日志結合代碼進行分析調試,識別由于release包沒有添加混淆導致onCreateForm傳遞卡片mini數據時失敗,并且兩張卡片是同一個布局加載的,沒有獲取到數據導致兩張卡片走的同一個布局,顯示有誤。將debug包打開混淆復現此問題,添加keep混淆后,debug包解決此問題。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/162751.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/162751.shtml
英文地址,請注明出處:http://en.pswp.cn/news/162751.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數據結構與算法編程題13

設計算法將一個帶頭結點的單鏈表A分解為兩個具有相同結構的鏈表B、C,其中B表的結點為A表中值小于零的結點,而C表的結點為A表中值大于零的結點(鏈表A中的元素為非零整數,要求B、C表利用A表的結點) for example: A -1 2 …

SpringBoot + 通義千問 + 自定義React組件,支持EventStream數據解析!

一、前言 大家好!我是sum墨,一個一線的底層碼農,平時喜歡研究和思考一些技術相關的問題并整理成文,限于本人水平,如果文章和代碼有表述不當之處,還請不吝賜教。 最近ChatGPT非常受歡迎,尤其是…

virtualList 封裝使用 虛擬列表 列表優化

虛擬列表 列表優化 virtualList 組件封裝 virtualList 組件封裝 本虛擬列表 要求一次性加載完所有數據 不適合分頁 新建一個select.vue 組件頁面 <template><div> <el-select transfer"true" :popper-append-to-body"true"popper-class…

YOLOv8/5不顯示FLPOs

YOLOv8/5不顯示FLPOs,避免自媒體搬運,請下滑! YOLOv8/5不顯示FLPOs,避免自媒體搬運,請下滑! YOLOv8/5不顯示FLPOs,避免自媒體搬運,請下滑! YOLOv8/5不顯示FLPOs,避免自媒體搬運,請下滑! YOLOv8/5不顯示FLPOs,避免自媒體搬運,請下滑! YOLOv8/5不顯示FLPOs,避免自…

安裝第三方包報錯 error: Microsoft Visual C++ 14.0 or greater is required——解決辦法

1、問題描述 手動安裝第三方軟件時&#xff0c;可以使用setup.py&#xff0c;來安裝已經下載的第三方包。一般文件下會存在setup&#xff0c;在所要安裝庫的目錄下的cmd執行&#xff1a;python setup.py install報錯&#xff1a;error: Microsoft Visual C 14.0 or greater i…

所有權成果輸出(宗地基本信息表、界址標示表、界址簽章表、界址點成果表、宗地圖、界址說明表、調查審核表)

一、軟件界面&#xff1a; 二、軟件功能&#xff1a; 一、所有權成果要求(宗地基本信息表、界址標示表、界址簽章表、界址點成果表、宗地圖、界址說明表、調查審核表&#xff09; 1 不動產權籍調查表封面 &#xff08;1&#xff09;宗地&#xff08;海&#xff09;代碼&…

基于element-plus定義表單配置化擴展表單按鈕

文章目錄 前言一、新增btn.vue組件二、使用總結如有啟發&#xff0c;可點贊收藏喲~ 前言 在后臺管理系統一般都存在列表查詢&#xff0c;且可輸入數據進行查詢 基于element-plus定義表單配置化 新增按鈕配置化 一、新增btn.vue組件 <template><template v-for&qu…

代碼隨想錄算法訓練營第四十二天【動態規劃part04】 | 01背包、416. 分割等和子集

01背包問題 題目鏈接&#xff1a; 題目頁面 求解思路&#xff1a; 確定dp數組及其下標含義&#xff1a;dp[i][j] 表示從下標為 [0] 到 [i] 的物品里任意選取&#xff0c;放進容量為j的背包&#xff0c;此時的價值總和最大值確定遞推公式&#xff1a; 不放物品i&#xff0c;…

centos查看空間使用情況

查看磁盤使用空間 df -h 查看該目錄下其他目錄的大小 du -sh *

自動化測試框架[Cypress 常見的“坑”]

Cypress命令是異步的 假設使用Selenium時&#xff0c;有如下這段代碼

Unity中顏色空間Gamma與Linear

文章目錄 前言一、人眼對光照的自適應1、光照強度與人眼所見的關系2、巧合的是&#xff0c;早期的電子脈沖顯示屏也符合這條曲線3、這兩條曲線都巧合的符合 y x^2.2^&#xff08;Gamma2.2空間&#xff09; 二、Gamma矯正1、沒矯正前&#xff0c;人眼看電子脈沖顯示屏&#xff…

學習筆記,http協議1.0,1.1,2.0之間的差別

文章目錄 前言http 1.1與http 1.0http 2.0 與http 1.x注意點 前言 僅做個人學習筆記記錄&#xff0c;如有錯誤&#xff0c;請多多包涵。 學習鏈接&#xff1a; HTTP 1.0與1.1、2.0之間的區別 面試官&#xff1a;說說 HTTP1.0/1.1/2.0 的區別? http 1.1與http 1.0 http協議1…

用 js 實現 判斷兩個數組是否相同

文章目錄 問題分析 問題 有數組 array1 和 array2 &#xff0c;如何判斷這兩個數組是否相同 分析 判斷兩個數組是否相同&#xff0c;你可以檢查它們的長度和每個元素是否相等。下面是一個示例代碼&#xff1a; function arraysAreEqual(arr1, arr2) {if (arr1.length ! arr2.…

事件溯源模式

概念解釋 事件溯源&#xff08;Event Sourcing&#xff09;是一種設計模式&#xff0c;其核心思想是將系統的狀態變化表示為一系列不可變的事件&#xff0c;并將這些事件存儲在事件日志中。系統的當前狀態可以通過重新應用&#xff08;回放&#xff09;這些事件來還原&#xf…

芯片的測試方法

半導體的生產流程包括晶圓制造和封裝測試&#xff0c;在這兩個環節中分別需要完成晶圓檢測(CP, Circuit Probing)和成品測試(FT, Final Test)。無論哪個環節&#xff0c;要測試芯片的各項功能指標均須完成兩個步驟&#xff1a;一是將芯片的引腳與測試機的功能模塊連接起來&…

促進材料基因工程基礎理論、前沿技術和關鍵裝備的發展和應用,第七屆材料基因工程高層論壇將于12月重慶舉辦,龍訊曠騰出席會議

為了進一步促進材料基因工程基礎理論、前沿技術和關鍵裝備的發展和應用&#xff0c;加強國際交流&#xff0c;加速我國新材料的研發和應用&#xff0c;由中國材料研究學會、西部科學城重慶高新區管理委員會主辦&#xff0c;重慶大學、北京科技大學、北京云智材料大數據研究院等…

【GUI】-- 14 GUI編程總結

GUI編程 05 GUI總結 在總結之前&#xff0c;先給出之前的貪吃蛇小游戲全代碼。 游戲的主啟動類&#xff1a; package com.duo.snake;import javax.swing.*;//游戲的主啟動類 public class StartGame {public static void main(String[] args) {JFrame frame new JFrame();…

Java面試-微服務篇-SpringCloud

Java面試-微服務篇-SpringCloud SpringCloud 常見組件注冊中心Eureka, Nacos負載均衡Ribbon服務雪崩, 熔斷降級微服務的監控來源 SpringCloud 常見組件 通常情況下 Eureka: 注冊中心Ribbon: 負載均衡Feign: 遠程調用Hystrix: 服務熔斷Zuul/Gateway: 網關 SpringCloudAlibaba…