androidRuntime:java.lang.UnsatisfiedLinkError:dlopen失败:找不到库“libreactnativejni.so”

问题描述 投票:0回答:1

在.apk文件上,它可以按预期打开应用程序 但是来自 Dexguard 的受保护 .apk 文件 当我尝试打开应用程序时,出现错误(我的应用程序崩溃了)

androidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: library "libreactnativejni.so" not found

在 dexguard-protected.pro 上 这是我的配置

-keep class **.so
-keepdirectories lib/**
-keep class **.libreactnativejni { *; }

如何解决? 我已经检查了 .apk 的 .zip 文件 我在正常的 .apk 上找到了 libreactnativejni.so,但在受保护的 .apk 文件中没有找到

android react-native obfuscation dexguard
1个回答
0
投票

我已经解决了这个问题

在 /android/app/build.gradle 上请确保此设置

 proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro", 'dexguard-release.pro'

以及规则文件 添加

-keepresourcefiles lib/**

首先,我无法使用keepresourcefiles,因为我的proguardFiles getDefaultProguardFile错误(我添加了dexguard-protected.pro,因为我认为我也必须添加它)

© www.soinside.com 2019 - 2024. All rights reserved.