我有一个有几个依赖项的android项目.其中两个(让我们称之为依赖关系A和B)具有本机库(.so文件).
依赖关系A具有以下体系结构:arm64-v8a,armeabi,armeabi-v7a,x86和x86_64.依赖关系B具有以下体系结构:armeabi,x86
因此,当我的应用程序在armeabi-v7a设备(例如)上运行,并且依赖关系B调用本机方法时,它无法找到相关的库来获取它(因为它不存在于armeabi-v7a文件夹中并且不会回退自动到armeabi图书馆所在的地方).
有什么方法可以解决这个问题吗?例如,我可以在build.gradle文件中添加一些配置,以便arm64-v8a,armeabi-v7a和x86_64文件夹不能集成到我的最终apk中吗?
我尝试过packagingOptions/exclude,但没有结果:问题中的文件夹仍然存在.
小智 31
尝试一个干净的构建,我没有,它仍然从上一个版本中获取文件.我最终删除了我的app/build /文件夹以确定.
android { 
    packagingOptions {
        exclude 'lib/armeabi-v7a/libSomeLibYouDontWant.so'
    }
}
在以前崩溃的应用程序上为我工作.
另一种方法是使用
android{
    defaultConfig{
        ndk{
            abiFilters "armeabi", "x86"
        }
    }
}
有一些类似的问题可能会有所帮助
| 归档时间: | 
 | 
| 查看次数: | 7033 次 | 
| 最近记录: |