I was wondering if it's possible to package my native .so files into my .aar file? If so, where would the .so files go and are there any references that I can read in regards to this?
Asked
Active
Viewed 5,867 times
12
-
Yes, it is possible ;) – sergej shafarenka Apr 22 '15 at 17:07
-
@beworker - What location would I put them in, inside the aar file? – Kamilski81 Apr 22 '15 at 19:55
2 Answers
12
jni/<platform>/libexample.so
doesn't work.
It should be src/main/jniLibs/<platform>/libexample.so

Wilson Chen
- 506
- 3
- 11
5
If you put it manually, then it should be placed underneath
jni/<platform>/libexample.so
where platform is a target CPU platform like "armeabi", "x86" etc. Typically you will have so-files for multiple platforms there. If you build from source code using Gradle you could simply put your native source code to
src/main/jni/
and build plugin will do the rest. As the resulting so-files will be built automatically and placed where they belong to.
Regarding the references, I've seen this been mentioned somewhere on the site dedicated to Android build plugin for Gradle. Since then I wasn't able to find this page again. But you can check out plugin's source code for more details.

sergej shafarenka
- 20,071
- 7
- 67
- 86