錯誤信息:
12-26 11:08:44.809 1501-1535/system_process E/PackageInstaller: Commit of session 201020547 failed: Failed to collect certificates from /data/app/vmdl201020547.tmp/base.apk: META-INF/CERT.SF indicates /data/app/vmdl201020547.tmp/base.apk is signed using APK Signature Scheme v2, but no such signature was found. Signature stripped?
[ 12-26 11:08:44.813 1246: 1246 E/ ]
Couldn't opendir /data/app/vmdl201020547.tmp: No such file or directory
錯誤原因:
使用了網上常見的往META-INF放置空文件,標識渠道的做法,之前常見做法是先簽名apk,然后放置標識渠道的文件,然后安裝,這樣做法在Android7.0以下是沒有問題的,但是在Android7.0以上,就會出現問題,7.0+對簽名做了改動,默認v2簽名,就會出現安裝失敗,比如華為mate9,是Android7.0就會安裝失敗。
解決方案:
先打簽名安裝包,放置標識渠道的文件,然后再重新簽名,這樣就會安裝成功了。之前的打多渠道安裝包還是可以正常使用的。
順便寫了一個軟件,打包更方便了。