Plus qu'un fichier a été trouvé avec indépendant du système d'exploitation de chemin de 'lib/x86/libusb.si"
Je suis en utilisant libusb dans mon application android. Quand je suis en train de construire libusb
bibliothèque native puis-je obtenir en dessous de message d'erreur, *.les fichiers générés.
D'erreur:échec de l'Exécution de la tâche:app:transformNativeLibsWithMergeJniLibsfordebug'.
Plus qu'un fichier a été trouvé avec indépendant du système d'exploitation de chemin de 'lib/x86/libusb.si"
construire.gradle
import org.apache.tools.ant.taskdefs.condition.Os
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 26
buildToolsVersion "26.0.0"
defaultConfig {
applicationId "com.williams.libusbpoc"
minSdkVersion 21
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
ndkBuild {
path 'src/main/jni/Android.mk'
}
}
sourceSets.main {
jniLibs.srcDir 'src/main/libs'
jni.srcDirs = [] //disable automatic ndk-build call
}
//call regular ndk-build(.cmd) script from app directory
task ndkBuild(type: Exec) {
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
commandLine 'ndk-build.cmd', '-C', file('src/main').absolutePath
} else {
commandLine 'ndk-build', '-C', file('src/main').absolutePath
}
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn ndkBuild
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
androidTestImplementation ('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
implementation 'com.android.support:appcompat-v7:26.0.0-beta2'
testImplementation 'junit:junit:4.12'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
compile "org.jetbrains.anko:anko-appcompat-v7-commons:$anko_version"
}
Je suis sur une machine windows. Personne ne sait ce que pourrait être le problème ?
Vous devez vous connecter pour publier un commentaire.
J'ai enlevé
jniLibs.srcDir 'src/main/libs'
code à l'intérieur de sourceSets.bloc principal. Elle a été la création *.donc les fichiers en double.J'ai vu une semblable erreur d'exécution de mon application après la migration vers Android Studio 3.0. Un construire propre a résolu le problème.
vous pouvez l'utiliser comme ceci:
ajoutez le code suivant à construire.gradle ,
ce pickFirst qui signifie : si plus d'un chemin d'accès correspond à la première ramasser, seule la première sera sélectionné. veuillez cliquer Obtenez plus d'informations
Je veux juste ajouter que pour Nonos répondre, je pense que j'ai reçu cette question après l'exécution de
ndk-build
dans monapp/jni
répertoire, puis de l'exécution des./gradlew installDebug
à partir du répertoire de niveau supérieur de mon Android NDK projet. Donc, faire unendk-build clean
dansapp/jni
avant de faire un autre build Gradle n'a en effet résoudre le problème.dans mon cas, l'ajout de ces correction du problème à construire.gradle application module de niveau
mais dans votre cas, les noms de bibliothèque peuvent être différentes afin de les remplacer par vos noms de bibliothèque