build.gradle 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. plugins {
  2. id 'com.android.application'
  3. }
  4. def buildWithCMake = project.hasProperty('BUILD_WITH_CMAKE');
  5. android {
  6. namespace = "org.libsdl.app"
  7. compileSdkVersion 35
  8. defaultConfig {
  9. minSdkVersion 21
  10. targetSdkVersion 35
  11. versionCode 1
  12. versionName "1.0"
  13. externalNativeBuild {
  14. ndkBuild {
  15. arguments "APP_PLATFORM=android-21"
  16. // abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
  17. abiFilters 'arm64-v8a'
  18. }
  19. cmake {
  20. arguments "-DANDROID_PLATFORM=android-21", "-DANDROID_STL=c++_static"
  21. // abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
  22. abiFilters 'arm64-v8a'
  23. }
  24. }
  25. }
  26. buildTypes {
  27. release {
  28. minifyEnabled false
  29. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  30. }
  31. }
  32. applicationVariants.all { variant ->
  33. tasks["merge${variant.name.capitalize()}Assets"]
  34. .dependsOn("externalNativeBuild${variant.name.capitalize()}")
  35. }
  36. if (!project.hasProperty('EXCLUDE_NATIVE_LIBS')) {
  37. sourceSets.main {
  38. jniLibs.srcDir 'libs'
  39. }
  40. externalNativeBuild {
  41. if (buildWithCMake) {
  42. cmake {
  43. path 'jni/CMakeLists.txt'
  44. }
  45. } else {
  46. ndkBuild {
  47. path 'jni/Android.mk'
  48. }
  49. }
  50. }
  51. }
  52. lint {
  53. abortOnError = false
  54. }
  55. }
  56. dependencies {
  57. implementation fileTree(include: ['*.jar'], dir: 'libs')
  58. }