首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >缺陷OpenSSL版本(OpenSSL 1.1.1g)

缺陷OpenSSL版本(OpenSSL 1.1.1g)
EN

Stack Overflow用户
提问于 2022-10-08 19:10:10
回答 2查看 1.6K关注 0票数 0

我已经收到了多个崩溃报告后,把这个放在谷歌播放。

这个应用程序在Huawei P40 Pro上传递,并且:

代码语言:javascript
运行
复制
Samsung SM-G960U1
Samsung SM-G981U1
Google Pixel 5
DOCOMO SH-01L
Nokia Nokia 1

然而,它没有传递给Google Pixel 6

信息:内存:8192 MB

OpenGL ES版本: 3.2

ABI: arm64-v8a

Android版本: Android 12 (SDK 31)

屏幕大小:1080x2400

错误:

代码语言:javascript
运行
复制
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。不良OpenSSL版本的修复 <<,这是我在收到谷歌警告后收到的链接。

EN

回答 2

Stack Overflow用户

发布于 2022-10-16 06:48:36

你的第三方图书馆可能已经过时了,

代码语言:javascript
运行
复制
de.blinkt.openvpn.core.OpenVPNService 

您可以使用logcat失败提示对项目进行分叉并进行修复:针对S+ (version 31及以上版本)需要在创建PendingIntent时指定FLAG_IMMUTABLE或FLAG_MUTABLE之一。

或者,按照这个来创建您自己的VPN服务https://developer.android.com/guide/topics/connectivity/vpn

票数 0
EN

Stack Overflow用户

发布于 2022-10-19 07:53:45

请检查项目中的第三方库,在我的例子中,在库更新之前我使用的是SQLCipher https://github.com/sqlcipher/android-database-sqlcipher,它使用的是缺陷版本: OpenSSL 1.1.1g

在最新版本之后,我可以看到"OpenSSL 1.1.1q 5 7月2022年“

为了验证/检查openSSL版本,可以在apk上使用下面的命令

解压缩-p .apk = strings \ grep "OpenSSL“

有关更多信息,https://support.google.com/faqs/answer/12576638

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73999834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档