Android Insatisfeito Link usando gradle experimental v0.6.0-beta6

Eu estava tentando criar um projeto simples para testar o NDK no qual um jnilib usa uma biblioteca .so pré-construída, mas continuo recebendo um erro do UnsatisfiedLink:

Com emulador:

java.lang.UnsatisfiedLinkError: dlopen failed: library "~/AndroidStudioProjects/HelloAndroidJni/app/src/main/jni/libs/dynamic/x86/libadd.so" not found

Com dispositivo real:

Caused by: java.lang.UnsatisfiedLinkError: Cannot load library: link_image[1891]:  1675 could not load needed library '~/AndroidStudioProjects/HelloAndroidJni/app/src/main/jni/libs/dynamic/armeabi/libadd.so' for 'libhello-android-jni.so' (load_library[1093]: Library '~/AndroidStudioProjects/HelloAndroidJni/app/src/main/jni/libs/dynamic/armeabi/libadd.so' not found)

A biblioteca .so possui uma única função "add", que adiciona 2 números. Eu o compilei com a cadeia de ferramentas autônoma NDK para diferentes ABI (doc):

add.c
#include "add.h"

int add(int x, int y){
    return x + y;
}

Meu jni (arquivo .c):

#include <jni.h>
#include "add.h"


JNIEXPORT jint JNICALL
Java_com_example_tomas_helloandroidjni_MainActivity_addNumbersJni(JNIEnv *env, jobject instance,
                                                                  jint n1, jint n2) {

    return add(n1, n2);
}

Minha estrutura de arquivos fica assim:

E meu arquivo gradle (conforme definido noguia experimental do gradle):

    apply plugin: 'com.android.model.application'

model {

    repositories {
        libs(PrebuiltLibraries) {
            libadd{
                headers.srcDir "src/main/jni/prebuilts/include"
                binaries.withType(SharedLibraryBinary) {
                    sharedLibraryFile = file("src/main/jni/libs/dynamic/${targetPlatform.getName()}/libadd.so")

                }
            }
        }
    }

    android {
        compileSdkVersion = 23
        buildToolsVersion = "23.0.2"


        sources {
            main {
                jni {
                    dependencies {
                        library "libadd" linkage "shared"
                    }
                }
            }
        }

        ndk {
            moduleName = "hello-android-jni"
            debuggable = true
        }

        defaultConfig.with {
            applicationId = "com.example.tomas.helloandroidjni"
            minSdkVersion.apiLevel = 15
            targetSdkVersion.apiLevel = 23
            versionCode = 1
            versionName = "1.0"
        }

        buildTypes {
            release {
                minifyEnabled = false
                proguardFiles.add(file("proguard-android.txt"))

            }
        }

        productFlavors {
            create ("x86"){
                ndk.abiFilters.add("x86")
            }

            create("arm"){
                ndk.abiFilters.add("armeabi")
            }

            create("arm7"){
                ndk.abiFilters.add("armeabi-v7a")
            }
            create ("fat"){

            }
        }

    }

}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.2.0'
}

Não sei para onde olhar, pois continuo recebendo esse erro ... Talvez eu precise adicionar uma bandeira ou algo assim?

Agradecemos antecipadamente por qualquer conselho!

EDIT 1.

Eu tentei com bibliotecas estáticas e elas funcionam bem. Como conseqüência (da adição de bibliotecas estáticas), alterei ligeiramente a estrutura das pastas (modificando o arquivo gradle de acordo).

Eu estou trabalhando em ambos:

Dispositivo real:Samsung GT-I8190L Android 4.1.2, API 16 - Processador ARMv7 rev 1 (v7l)Emulador:API do Nexus 4 23 - x86

EDIT 2.

Para compilar as bibliotecas, estou fazendo isso com oCadeia de ferramentas autônoma NDK:

Dispositivo real (ARMv7):SYSROOT = $ NDK / plataformas / android-21 / arch-arm eCC = "$ NDK / toolchains / arm-linux-androideabi-4.8 / pré-construído / darwin-x86_64 / bin / arm-linux-androideabi-gcc-4.8 --sysroot = $ SYSROOT"

Emulador (x86):SYSROOT = $ NDK / plataformas / android-21 / arch-x86 eCC = "/ Usuários / Tomas / Biblioteca / Android / android-ndk-r10e / cadeias de ferramentas / x86-4.8 / pré-criado / darwin-x86_64 / bin / i686-linux-android-gcc-4.8 --sysroot = $ SYSROOT"

questionAnswers(1)

yourAnswerToTheQuestion