I tried with the 0.3.1 release of the experimental plugin and it was working for me. It is independent of Android Studio.
On Tuesday, September 1, 2015 at 7:17:38 PM UTC+2, Wes Cook wrote: > > Will this be in a release of the plugin, or do we have to wait for a new > version of Android Studio? > > On Wednesday, August 26, 2015 at 11:52:57 AM UTC-6, Raymond Chiu wrote: >> >> I am sorry for the experiences. There are a number of fixes for the >> upcoming release relating to library module. It should be ready soon. >> Please give it another try when it is released. Thanks. >> >> >> On Tuesday, August 25, 2015 at 1:42:02 PM UTC-7, Mark Melling wrote: >>> >>> I also had the same problem. >>> >>> As an experiment I built the library module as an application (using >>> com.android.model.application), but leaving the build.gradle the same (as >>> when building the library) and in this case the .so file was include in the >>> built apk. >>> >>> >>> >>> >>> On Friday, 7 August 2015 17:00:26 UTC+1, Florent Brunet wrote: >>>> >>>> Hi! >>>> >>>> I am investigating the new support of the NDK with the official 1.3 >>>> release of Android Studio. More precisely, I am trying to make a library >>>> module which uses both Java code and native C code (interfaced with JNI). >>>> I >>>> followed the explanations provided in this doc: >>>> http://tools.android.com/tech-docs/new-build-system/gradle-experimental >>>> (Unfortunately, it doesn't say much about libraries). So basically I have >>>> an Android Studio project with two modules: >>>> - a main application (which uses com.android.model.application plugin) >>>> - a library module (which uses com.android.model.library plugin) >>>> (The main application does not have any native C code, only the library >>>> module has.) >>>> >>>> Here are the problems I've got: >>>> >>>> *First case: I put all the NDK stuff in the build.gradle file of the >>>> library module.* >>>> - The library seems to compile fine (Java and native parts -> the .so >>>> files are present in the intermediate outputs) >>>> - An AAR file is built but it does not contain the .so files >>>> - The whole project does not compile: it stops on the >>>> compileDebugJavaWithJavac task of the main app module complaining that it >>>> cannot find the symbols defined in the library module. >>>> >>>> *Second case: I remove all the NDK stuff from the build.gradle file of >>>> the library module.* >>>> That's silly considering what my final goal is, I did that just for >>>> testing purposes. >>>> In this case, the compilation is successful: When the main app module >>>> is compiled, the symbols defined in the library module are properly found >>>> (-> from what I deduce that the dependencies configuration in the gradle >>>> files should be OK...) >>>> The generated APK runs properly on the device (as long as the native >>>> code from the library module is not used of course) >>>> >>>> I spent a lot of time trying to make that work without any success... >>>> It's definitely not impossible that I'm doing something wrong but I've got >>>> the feeling that there is something buggy and/or missing in the >>>> gradle-experimental 0.2.0 plugin. >>>> >>>> The full source code of the minimal project I used to test the creation >>>> of an AAR library containing native code is here: >>>> https://gitlab.com/FlorentBrunet/trials-gradleexpe-lib-jni/tree/master >>>> >>>> And here are my build.gradle files: >>>> *- for the main app module:* >>>> >>>> apply plugin: 'com.android.model.application' >>>> >>>> model { >>>> android { >>>> compileSdkVersion = 22 >>>> buildToolsVersion = "22.0.1" >>>> >>>> defaultConfig.with { >>>> applicationId = "com.ubleam.trialswithlib" >>>> minSdkVersion.apiLevel = 11 >>>> targetSdkVersion.apiLevel = 22 >>>> versionCode = 1 >>>> versionName = "1.0" >>>> } >>>> } >>>> >>>> android.buildTypes { >>>> release { >>>> minifyEnabled = false >>>> proguardFiles += file('proguard-rules.pro') >>>> } >>>> } >>>> } >>>> >>>> dependencies { >>>> compile fileTree(dir: 'libs', include: ['*.jar']) >>>> compile 'com.android.support:appcompat-v7:22.2.1' >>>> compile project(':mylibrary') >>>> } >>>> >>>> >>>> *- for the library module:* >>>> >>>> apply plugin: 'com.android.model.library' >>>> >>>> model { >>>> android { >>>> compileSdkVersion = 22 >>>> buildToolsVersion = "22.0.1" >>>> >>>> defaultConfig.with { >>>> applicationId = "com.ubleam.mylibrary" >>>> minSdkVersion.apiLevel = 11 >>>> targetSdkVersion.apiLevel = 22 >>>> versionCode = 1 >>>> versionName = "1.0" >>>> } >>>> } >>>> >>>> android.ndk { >>>> moduleName = "dummylib" >>>> } >>>> >>>> android.buildTypes { >>>> release { >>>> minifyEnabled = false >>>> proguardFiles += file('proguard-rules.pro') >>>> } >>>> } >>>> >>>> android.productFlavors { >>>> // for detailed abiFilter descriptions, refer to "Supported ABIs" @ >>>> // https://developer.android.com/ndk/guides/abis.html#sa >>>> create("arm") { >>>> ndk.abiFilters += "armeabi" >>>> } >>>> create("arm7") { >>>> ndk.abiFilters += "armeabi-v7a" >>>> } >>>> create("arm8") { >>>> ndk.abiFilters += "arm64-v8a" >>>> } >>>> create("x86") { >>>> ndk.abiFilters += "x86" >>>> } >>>> create("x86-64") { >>>> ndk.abiFilters += "x86_64" >>>> } >>>> create("mips") { >>>> ndk.abiFilters += "mips" >>>> } >>>> create("mips-64") { >>>> ndk.abiFilters += "mips64" >>>> } >>>> // To include all cpu architectures, leaves abiFilters empty >>>> create("all") >>>> } >>>> } >>>> >>>> dependencies { >>>> compile fileTree(dir: 'libs', include: ['*.jar']) >>>> compile 'com.android.support:appcompat-v7:22.2.1' >>>> } >>>> >>>> >>>> Really hope that this could help improving the Android tools because, >>>> except for these few problems, Android Studio 1.3 and the integration of >>>> the NDK is amazing! >>>> >>> -- You received this message because you are subscribed to the Google Groups "adt-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
