Android Studio OpenSSL版本有缺陷(OpenSSL 1.1.1g)

7vux5j2d  于 2022-11-16  发布在  Android
关注(0)|答案(2)|浏览(345)

我已经收到了多个崩溃报告后,把这个在Google Play。
此应用通过了Huawei P40 Pro和:

Samsung SM-G960U1
Samsung SM-G981U1
Google Pixel 5
DOCOMO SH-01L
Nokia Nokia 1

但是,它在Google Pixel 6上没有通过。
信息:内存:8,192兆字节
OpenGL ES版本:3.2
ABI:臂64-v8 a
安卓版:安卓12(SDK 31)
屏幕尺寸:1080 x 2400像素
错误:

FATAL EXCEPTION: main
Process: com.pronner.ragtagvpn, PID: 19954
java.lang.RuntimeException: Unable to start service de.blinkt.openvpn.core.OpenVPNService@49c7caa with Intent { cmp=com.pronner.ragtagvpn/de.blinkt.openvpn.core.OpenVPNService (has extras) }: java.lang.IllegalArgumentException: com.pronner.ragtagvpn: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.
    at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4657)
    at android.app.ActivityThread.access$2000(ActivityThread.java:247)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2091)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:201)
    at android.os.Looper.loop(Looper.java:288)
    at android.app.ActivityThread.main(ActivityThread.java:7839)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
Caused by: java.lang.IllegalArgumentException: com.pronner.ragtagvpn: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.
    at android.app.PendingIntent.checkFlags(PendingIntent.java:375)
    at android.app.PendingIntent.getActivityAsUser(PendingIntent.java:458)
    at android.app.PendingIntent.getActivity(PendingIntent.java:444)
    at android.app.PendingIntent.getActivity(PendingIntent.java:408)
    at de.blinkt.openvpn.core.OpenVPNService.getGraphPendingIntent(OpenVPNService.java:491)
    at de.blinkt.openvpn.core.OpenVPNService.showNotification(OpenVPNService.java:334)
    at de.blinkt.openvpn.core.OpenVPNService.onStartCommand(OpenVPNService.java:586)
    at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4639)
    ... 9 more

不知道该怎么做,因为这已经在我的设备上工作,我不知道我应该如何更新我的openssl.Remediation for Bad OpenSSL Versions〈〈这是我从谷歌收到警告后收到的链接。

bwntbbo3

bwntbbo31#

您的第三方库可能已过期,

de.blinkt.openvpn.core.OpenVPNService

您可以派生项目并使用logcat故障提示修复它:以S+(版本31及更高版本)为目标要求在创建PendingIntent时指定FLAG_IMMUTABLE或FLAG_MUTABLE之一。
或者,按照此步骤创建您自己的VPN服务https://developer.android.com/guide/topics/connectivity/vpn

jei2mxaa

jei2mxaa2#

请检查您项目中的第三方库,在我的情况下,我使用的是SQLCipher https://github.com/sqlcipher/android-database-sqlcipher之前,库更新它使用的是有缺陷的版本:开放式SSL 1.1.1g
在最新版本之后,我可以看到“OpenSSL 1.1.1q 2022年7月5日”
为了验证/检查openSSL版本,您可以对您的apk使用以下命令
解压缩-p<apk_name>.apk|字符串|grep“开放SSL”
更多信息https://support.google.com/faqs/answer/12576638

相关问题