我知道有几个类似的问题,但这对我不起作用...
我创建了使用ARCore Android库。这是一个关于如何不包含.SO文件的问题,如果我使用创建的ndk库?还有一个答案听起来是对的
https://stackoverflow.com/A/58963852/5709159
所以,我试着用这种方法来解决
https://stackoverflow.com/A/44962630/5709159
sourceSets.main {
jniLibs.srcDir 'src/main/jniLibs'
jni.srcDirs = [] //disable automatic ndk-build call
}
https://stackoverflow.com/A/5453718/5709159
packagingOptions {
pickFirst 'src/main/jniLibs/arm64-v8a/libarcore_sdk_jni.so'
pickFirst 'src/main/jniLibs/armeabi-v7a/libarcore_sdk_jni.so'
pickFirst 'src/main/jniLibs/x86/libarcore_sdk_jni.so'
pickFirst 'src/main/jniLibs/x86_64/libarcore_sdk_jni.so'
}
packagingOptions {
pickFirst 'lib/arm64-v8a/libarcore_sdk_jni.so'
pickFirst 'lib/armeabi-v7a/libarcore_sdk_jni.so'
pickFirst 'lib/x86/libarcore_sdk_jni.so'
pickFirst 'lib/x86_64/libarcore_sdk_jni.so'
}
那么,如何修复呢?
您可能添加了共享的.so
文件,并从源代码生成(或以其他方式引用它们)。
不能同时执行这两个操作,因此您需要从源代码处构建并删除那些.so
文件,或者删除arcore-android-sdk
模块并保留.so
文件。Javadependencies
也可能引入本机程序集,而build.gradle
的那部分缺少(只需在“外部库”中浏览AR core,查看它包含的内容,以防它存在)。使用预构建库通常构建得更快并节省时间--这是建议的,除非需要编辑cpp
源代码。
通常可以在以下build.gradle
中提供类似的依赖关系:
dependencies {
implementation "com.google.ar:core:1.13.0"
natives "com.google.ar:core:1.13.0"
}
// Extracts the shared libraries from aars in the natives configuration.
// This is done so that NDK builds can access these libraries.
task extractNativeLibraries() {
// Always extract, this ensures the native libs are updated if the version changes.
outputs.upToDateWhen { false }
doFirst {
configurations.natives.files.each { f ->
copy {
from zipTree(f)
into arcore_libpath
include "jni/**/*"
}
}
}
}
tasks.whenTaskAdded {
task-> if (task.name.contains("external") && !task.name.contains("Clean")) {
task.dependsOn(extractNativeLibraries)
}
}
这样的Gradle任务也可能是重复的原因,当它配置不正确时。packagingoptions
在任何情况下都是错误的方法,因为链接器已经不知道要链接哪个。
我尝试调试我的应用程序,但出现错误: 找到了多个具有操作系统独立路径“lib/armeabi/libBugly.so”的文件 这是我Gradle的一部分: Android Studio 3.1.3,Gradle4.1在我的项目中。
在app/build.gradle文件中 仍然给出错误。。。。 试 但它给出了以下错误
当我构建我的应用程序时,我得到以下错误: 错误:任务“:app:TransformResourcesWithMergeJavaResforDebug”执行失败。找到多个具有操作系统独立路径“meta-inf/license”的文件 这是我的build.gradle文件: 当我将此代码添加到build.gradle文件中时, 这个错误会被解决,但是另一个问题会发生。像这样: 谁有想法怎么解决这个?
在Android项目中。我使用 我遇到了 发现多个文件具有独立于操作系统的路径“META-INF/atomicfu”。kotlin\u模块“” 甚至 不起作用
我正在尝试okhttp,但出现下一个错误:\ 找到多个具有操作系统独立路径“meta-inf/proguard/okhttp3.pro”的文件 有人知道发生了什么吗?它说‘发现了一个文件’但不确定它在说什么。我是android的新手 谢谢 更新按@vivek请求显示的proguard-rules.pro代码 找到多个具有操作系统独立路径“okhttp3/internal/publicsuffix/