|
|
- def buildAsLibrary = project.hasProperty('BUILD_AS_LIBRARY');
- def buildAsApplication = !buildAsLibrary
- if (buildAsApplication) {
- apply plugin: 'com.android.application'
- }
- else {
- apply plugin: 'com.android.library'
- }
-
- android {
- compileSdkVersion 31
- defaultConfig {
- if (buildAsApplication) {
- applicationId "org.libsdl.app"
- }
- minSdkVersion 16
- targetSdkVersion 31
- versionCode 1
- versionName "1.0"
- externalNativeBuild {
- ndkBuild {
- arguments "APP_PLATFORM=android-16"
- abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
- }
- // cmake {
- // arguments "-DANDROID_APP_PLATFORM=android-16", "-DANDROID_STL=c++_static"
- // // abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
- // abiFilters 'arm64-v8a'
- // }
- }
- }
- buildTypes {
- release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
- }
- }
- applicationVariants.all { variant ->
- tasks["merge${variant.name.capitalize()}Assets"]
- .dependsOn("externalNativeBuild${variant.name.capitalize()}")
- }
- if (!project.hasProperty('EXCLUDE_NATIVE_LIBS')) {
- sourceSets.main {
- jniLibs.srcDir 'libs'
- }
- externalNativeBuild {
- ndkBuild {
- path 'jni/Android.mk'
- }
- // cmake {
- // path 'jni/CMakeLists.txt'
- // }
- }
-
- }
- lintOptions {
- abortOnError false
- }
-
- if (buildAsLibrary) {
- libraryVariants.all { variant ->
- variant.outputs.each { output ->
- def outputFile = output.outputFile
- if (outputFile != null && outputFile.name.endsWith(".aar")) {
- def fileName = "org.libsdl.app.aar";
- output.outputFile = new File(outputFile.parent, fileName);
- }
- }
- }
- }
- }
-
- dependencies {
- implementation fileTree(include: ['*.jar'], dir: 'libs')
- }
|