1. 程式人生 > >記一次 報錯:Android ClassNotFoundException: Didn't find class on path

記一次 報錯:Android ClassNotFoundException: Didn't find class on path

場景

專案上線後,使用者反饋,安裝完開啟應用就顯示“應用已停止執行”,改錯誤發生在5.0以上的手機,經測試6.7.8.均沒有問題,推測是6.0以下會有這個問題。除錯時,報錯如下:
TIM圖片20180615190327.png
提示類找不到,檢查了AndroidManifest.xml 都沒問題,在網上搜了一圈,大多都是採用分包解決,然而專案本來就是採用的分包multiDexEnabled true,還有刪除build資料夾的,這些都試過..
經測試,debug包是沒有問題的,只有打包後會出現,問題定位在打包配置上,檢查build.gradle如下圖
TIM截圖20180615173600.png

專案原先是沒有新增v2SigningEnabled true

解決

signingConfigs 裡新增配置v2SigningEnabled true 或者使用AS自帶的打包,勾選v2
微信圖片_20180615173510.png

深入

  • v1和v2的簽名使用
    1)只勾選v1簽名並不會影響什麼,但是在7.0上不會使用更安全的驗證方式
    2)只勾選V2簽名7.0以下會直接安裝完顯示未安裝,7.0以上則使用了V2的方式驗證
    3)同時勾選V1和V2則所有機型都沒問題

  • Android 7.0中引入了APK Signature Scheme v2,v1是jar Signature來自JDK
    V1:應該是通過ZIP條目進行驗證,這樣APK 簽署後可進行許多修改 - 可以移動甚至重新壓縮檔案。
    V2:驗證壓縮檔案的所有位元組,而不是單個 ZIP 條目,因此,在簽名後無法再更改(包括 zipalign)。正因如此,現在在編譯過程中,我們將壓縮、調整和簽署合併成一步完成。好處顯而易見,更安全而且新的簽名可縮短在裝置上進行驗證的時間(不需要費時地解壓縮然後驗證),從而加快應用安裝速度。

相關推薦

Android ClassNotFoundException: Didn't find class on path

場景 專案上線後,使用者反饋,安裝完開啟應用就顯示“應用已停止執行”,改錯誤發生在5.0以上的手機,經測試6.7.8.均沒有問題,推測是6.0以下會有這個問題。除錯時,報錯如下: 提示類找不到,

出現java.lang.ClassNotFoundException: Didn't find class "okio.Buffer" on path: DexPathList

這種情況你要注意,不可以匯入本地庫,需要遠端庫,先檢查是否有本地庫,如果有,去除依賴,然後再加入遠端依賴 報錯資訊............................  Process: im.com.work.workapp, PID: 27022        

——Java.lang.NumberFormatException: For input string: "50 "

該錯誤程式碼的含義是,將50轉換成數字型別出現異常,但是實際上我們測試的資料中根本沒有50的字樣,不知道哪裡來的,如下 該專案是公司的一個老專案增加新功能,當時在測試環境下完全正常,資料能完全寫入到資料庫,但是移交到正式庫後出現問題,測試庫和正式庫的區別是資料庫不一樣,其他

Android常見的異常之ClassNotFoundException--Didn't find class

兩個可以完美執行的程式合在一起就會報以下的錯誤,彷徨了好久,終於迎來答案: 報的異常(還有很多相似的異常,這裡只截取了一部分)是: 解決方案: 還是先解決打包問題,回頭再研究那些高深的動態化載入技

Android開發之~java.lang.ClassNotFoundException: Didn't find class "android.view.x" on path: ...

Process: com.vincent.example, PID: 10424 java.lang.RuntimeException: Unable to s

Android Studio-Didn't find class XXX on path: DexPathList [zip file "/data/app/packagename/base.apk]

錯誤描述 錯誤表現在:安裝成功後,點開應用就 Crash 。 就是之前正常的專案,某一天就突然這樣的,我也很是無語。 錯誤提示很長,主要資訊就是下面這些資訊: Caused by: java.lang.ClassNotFoundException: Didn't find

java.lang.ClassNotFoundException: Didn't find class "*****Activity" on path: /data/app/*******.apk

很多人出現了java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{*****Activity}: java.

CloudStack導入網絡鏡像的

blob clust 嘗試 family builder pre host src int 1、故障描述通過“註冊ISO”功能導入阿裏雲的一個鏡像,出現如下報錯信息:查看資源域的信息:2、查看日誌Jan 17 06:25:01 cloudstack-new-02 serve

CentOS7 yum的" 14: curl#56 - "Recv failure: Connection reset by peer" "

yum1、故障現象[[email protected]/* */ src]# yum update Loaded plugins: fastestmirror, langpacks Could not retrieve mirrorlist 7&arch=x86_64&repo

Tomcat8連接Redis3的記錄

tomcat8 redis3最近兩天在測試tomcat8配合Redis做session共享,今天調試的過程中發現如下報錯:一開始我以為是我以為是自己Tomcat連接redis的某一部分出現了問題,排查發現提示是連接不到redis的pool,然後我使用telnet了下redis的6379,意料之外,居然不通,查

Linux Bridge的

bridge一、背景說明最近參與一次私有雲的項目,網絡模式利用CentOS7默認的橋接模式。操作系統是CentOS7.4,客戶自己安裝的,然後告訴我們常用的工具包都安裝了。二、問題及解決方法a)配置網卡如下:# cat /etc/sysconfig/network-scripts/ifcfg-em1 TYP

Postfix的處理

postfix配置zabbix監控時,查看/var/log/maillog日誌,發現如下報錯:Apr 30 22:39:09 ops-monitor-01 postfix/sendmail[346]: fatal: parameter inet_interfaces: no local interface f

產品需求圖片等比縮放和CSS自適應布局16:9

是我 width 圖片展示 網上 IT tom 就會 很好 尺寸 前言   前陣子,產品跑過來問我現有的模板中沒有圖片模板,需要添加一個圖片模板;然而,他要求圖片在展示區最好能夠實現隨著窗口的變化而自動按圖片比例等比縮放,並且居中展示圖片。我當時想著,拋開技術實現層面,圖

Spring3.2 + JDK1.7 由於JDK版本設定不對的

Spring3.2 + JDK1.7 由於JDK版本設定不對的一次報錯。 java.lang.IllegalArgumentException at org.springframework.asm.ClassReader.<init>(Unknown Source)

經歷-vivo手機標識問題

最近在測試一款產品,然後發現我的 vivo y67 在應用登入之後忽然自動退出,一開始以為是沒有進行動態許可權管理的原因,於是找開發拿了原始碼,發現其實是做了這一步工作的。但就是死活卡在這一步。拿到優測網上面測試,發現vivo 6.1 ,vivo5.0 的機型都是掛了的。而小米和魅族的卻

過程

上一次寫日誌檢視說MySQL日誌沒有開啟,然後開啟了,可是問題產生的原因還是沒找到,這次問題又出現了。 檢視nginx日誌,發現url傳值還是和上次一樣沒問題,趕緊檢視MySQL日誌,資料插入並無問題,我的程式碼質量還是非常棒滴。 那就是後期改了,搜尋MySQL日誌果然發現改動紀錄,去nginx日誌查詢對

RK 6.0 專案編譯android.net.wif... cannot be found in source files,imported jack lib or classpatch

自己寫的原始碼,放到7.1和8.1上面編譯都沒有問題,在6.0上編譯的時候報android.net.wif… cannot be found in source files,imported jack lib or classpatch 看到這個錯誤時有點蒙,猜測是和libs或api有關係

解決 Android N 7.0 上 android.os.FileUriExposedException

解決 Android N 上 安裝Apk時報錯:android.os.FileUriExposedException: file:///storage/emulated/0/Download/appName-2.3.0.apk exposed beyond

Androidandroid.view.InflateException: Binary XML file line #0: Error inflating class TextView

https://blog.csdn.net/Shirley0207/article/details/78529785報錯資訊:android.view.InflateException: Binary XML file line #0: Error inflating cla

Android 7.0及其以上系統拍照,開啟相簿,裁剪, android.os.FileUriExposedException: file:///storage/emulated/0/.....

全部程式碼:點選下載注意:如果你原先的應用的targetSdkVersion本來就小與27。那就拍照。什麼都不修改。也不會崩潰。但是、一旦你修改了你的targetSdkVersion為27.或者28。那你的應用就會報出這些問題。。具體原因。請自行百度下targetSdkVer