Proguard混淆後無法正常執行的問題

2021-05-17 18:53:35 字數 485 閱讀 4888

近日在工作中加了乙個函式後編譯遇到問題:

...preverify...

error preverifying class a

class loading error: wrong name

error:: error while preverifying

苦思無果,後上網查閱,原來是編譯器的問題,

做個記錄.....就這麼乙個詭異的問題 我查證了整快一天......-_-!!

proguard混淆後無法正常執行的問題: -dontusemixedcaseclassnames

在 proguard 的預設中,當要進行混淆的檔案超過 26 個時, 前面 26 個會從 a 編到 z,但是第 27 個會編成 a ( 大寫的 a )。在我們常用的微軟的作業系統 a.class 和 a.class 是視為一樣的, 所以會把 用 a.class 把 a.class 覆蓋掉, 因此就會出現 "unenable to load class a"

android 混淆相關 proguard

1 再android上使用混淆比較簡單,只需要在project.propreties檔案中新增一行 proguard.config proguard.cfg 如果不存再proguard.cfg檔案,可以自己建立 2 如果引入了第三方包,又不需要混淆則 指定第三方的包 libraryjars libr...

使用proguard混淆打包APK

在打包發布android應用的時候,可以應用proguard來對 進行混淆,防止有人反編譯apk獲取源 之前建立android 2.3的專案的時候,會在根部錄下自動建立proguard.cfg檔案,4.0之後需要手動建立。在工程中新增proguard.cfg,內容如下 上面的 可以用於呼叫第三方包的...

Android中proguard混淆第三方jar包

現在大部分專案都使用第三方的jar包,包括json解析的gson.jar,統計使用者資訊的umeng.jar,support v4.jar等等等等,這些jar包本身基本都做了混淆,如果再用progurad混淆的話會出現錯誤,所以要通過 keep等方法不混淆這些jar中的內容,把到現在用過的整理下僅供...