我制作了我的应用的签名发行APK,并通过USB将其复制到手机中并安装了它。然后我将SAME APK文件上传到GooglePlay并从那里安装。但是,当我打开该应用程序时,它仍停留在SplashScreen上。 我使用LogCat来检测错误,这是日志:
10-04 13:37:22.052 29875-29903 /? W / System.err:javax.crypto.BadPaddingException:错误:06065064:数字信封例程:EVP_DecryptFinal_ex:错误解密 10-04 13:37:22.052 29875-29903 /? W / System.err:位于com.android.org.conscrypt.NativeCrypto.EVP_CipherFinal_ex(本地方法) 10-04 13:37:22.052 29875-29903 /? W / System.err:位于com.android.org.conscrypt.OpenSSLCipher.doFinalInternal(OpenSSLCipher.java:430) 10-04 13:37:22.052 29875-29903 /? W / System.err:位于com.android.org.conscrypt.OpenSSLCipher.engineDoFinal(OpenSSLCipher.java:466) 10-04 13:37:22.052 29875-29903 /? W / System.err:位于javax.crypto.Cipher.doFinal(Cipher.java:1340) 10-04 13:37:22.052 29875-29903 /? W / System.err:位于com.maptriks.nevo.helper.SecurityHelper.decrypt(SecurityHelper.java:101) 10-04 13:37:22.052 29875-29903 /? W / System.err:位于com.maptriks.nevo.helper.SecurityHelper.decrypt(SecurityHelper.java:91) 10-04 13:37:22.052 29875-29903 /? W / System.err:位于com.maptriks.nevo.manager.api.BodyRequest.parseNetworkResponse(BodyRequest.java:76) 10-04 13:37:22.052 29875-29903 /? W / System.err:位于com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:123)
我在BadPaddingException上进行了搜索,但所有问题都与对应用程序使用的KEY进行加密/解密有关。但是,根据我的情况,在将其上传到GooglePlay之前,它可以正常工作,我认为这消除了加密/解密错误部分。
首先,我认为ProGuard正在做某事,然后在gradle中将其禁用。仍然我有同样的问题。
更新: 我检查了apk指纹,我的应用程序SHA1指纹与从GooglePlay下载的apk指纹不同。可能是错误的原因吗? 在将其上传到GoolePlay之前,我的应用程序运行完美。
答案 0 :(得分:0)
您应该向com.maptriks.nevo.manager.api.BodyRequest.parseNetworkResponse(BodyRequest.java:76)
和com.maptriks.nevo.helper.SecurityHelper.decrypt(SecurityHelper.java:101)
添加一些额外的日志,以检查发生了什么情况。