簡體   English   中英

當 minifyEnabled 設置為 true 時的 NullPointer

[英]NullPointer when minifyEnabled is set to true

我有我的應用程序的問題時minifyEnabled設置為true在我build.gradle

RecyclerView中的項目顯示時沒有任何屬性(所以沒有描述,沒有其他東西,就像一個空對象被添加到RecyclerView ),當它嘗試對RecyclerView某些項目進行任何操作時,我得到一個NullPointer (而如果minifyEnabled設置為 false 所有工作,因為它必須)

應用程序崩潰的點之一是在 equals 行中的以下內容:

public Menu.Prodotti getItem(Menu.Prodotti prodotto) {
    for (Menu.Prodotti item : items) {
        if (item.codice.equals(prodotto.codice) && item.jump == prodotto.jump) {
            return item;
        }
    }
    return null;
}

java.lang.NullPointerException: 嘗試在空對象引用上調用虛擬方法 'boolean java.lang.String.equals(java.lang.Object)'

似乎Menu.Prodotti已縮小並且無法加載。

但是在我的proguard-rules我添加了整個Menu類以從縮小中忽略,我還應該嘗試做什么?

這是我的proguard-rules.pro

-keep class it.gabtamagnini.visualposmobile.models.Menu
-keepclassmembers class it.gabtamagnini.visualposmobile.models.Menu { *; }

這比我認為我必須通過將$*添加到-keep class來包含內部類要容易

所以我的proguard-rules.pro現在看起來像這樣,並且一切正常:

-keep class it.gabtamagnini.visualposmobile.models.Menu$* { *; }
-keepclassmembers class it.gabtamagnini.visualposmobile.models.Menu { *; }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM