NORM-mirror/android
bebopagogo 053aa16eb8 normCast improvements 2022-05-09 11:35:32 -04:00
..
gradle/wrapper normCast improvements 2022-05-09 11:35:32 -04:00
lib normCast improvements 2022-05-09 11:35:32 -04:00
README.md Reconfigured the android Gradle build (#47) 2021-12-03 18:01:38 -05:00
build.gradle normCast improvements 2022-05-09 11:35:32 -04:00
gradlew normCast improvements 2022-05-09 11:35:32 -04:00
gradlew.bat normCast improvements 2022-05-09 11:35:32 -04:00
settings.gradle update to latest 2019-09-11 12:29:48 -04:00

README.md

This directoy contains Android Studio project files for building the NORM library for Android.

REQUIREMENTS:

Ninja is required in order to run the ant build for the java .jar file

Download and install ndk and cmake using the SDK manager within Android Studio. To do this:

-> Tools -> SDK Manager -> System Settings -> Android SDK -> SDK Tools -> Select 'Show Package Details' at the bottom

The latest compatible versions are ndk version 20.0.5594570 and cmake version 3.10.2.4988404

  • Important * If you decide to install different version of the SDK Tools above, make sure to edit the path locations in the local.properties file

TO BUILD:

./gradlew build

The lib/build/ directory will contain the binary libraries built.

The "./gradlew clean" command can be used to delete the files built.

This directory may also be opened as an Android Studio project and built from the IDE GUI.

This will evolve as we update NORM and associated projects to the newer Android Studio tool chain.

USAGE:

Copy the .aar file into your ${project.rootDir}/app/libs/ folder

Within your app level build.gradle include the following two tasks before your dependencies section:

task extractSo(type: Copy) {
    println 'Extracting *.so file(s)....'

    from zipTree("${project.rootDir}/app/libs/lib-release_-release.aar")
    into "${project.rootDir}/app/src/main/jniLibs"
    include "jni/**/*.so"

    eachFile {
        def segments = it.getRelativePath().getSegments() as List
        println segments
        it.setPath(segments.tail().join("/"))
        return it
    }
    includeEmptyDirs = false
}

task extractJar(type: Copy, dependsOn: extractSo) {
    println 'Extracting *.jar file(s)....'

    from zipTree("${project.rootDir}/app/libs/lib-release_-release.aar")
    into "${project.rootDir}/app/libs/"
    include "norm-*.jar"
}