場景:
用as運行是可以的,但是混淆簽名後 小米手機無法獲取OAID 華爲mate30獲取OAID 報錯 報錯信息如下圖
參考信息應該是混淆引起的,經過漫長的尋找,找到解決方案如下:
一.檢查10.0權限是否添加 <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
二.proguard中是否添加了如下配置
#代碼優化選項,不加該行會將沒有用到的類刪除用 -dontshrink -dontwarn android.support.annotation.Keep #保留註解,如果不添加改行會導致我們的@Keep註解失效 -keepclasseswithmembernames class * { # 保持 native 方法不被混淆 native <methods>; } -keepattributes *Annotation* -keep @android.support.annotation.Keep class **
添加之後 就可以啦