build.gradle 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. // flutter
  2. def localProperties = new Properties()
  3. def localPropertiesFile = rootProject.file('local.properties')
  4. if (localPropertiesFile.exists()) {
  5. localPropertiesFile.withInputStream { stream ->
  6. localProperties.load(stream)
  7. }
  8. }
  9. def flutterRoot = localProperties.getProperty('flutter.sdk')
  10. if (flutterRoot == null) {
  11. throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
  12. }
  13. apply plugin: 'com.android.application'
  14. apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
  15. flutter {
  16. source '../..'
  17. }
  18. // build versioning
  19. def currentVersionCode() {
  20. def propsFile = file('versions.properties')
  21. def props = new Properties()
  22. props.load(new FileInputStream(propsFile))
  23. return props['build.versionCode'].toInteger()
  24. }
  25. def incrementVersionCode() {
  26. def propsFile = file('versions.properties')
  27. def props = new Properties()
  28. props.load(new FileInputStream(propsFile))
  29. def currentCode = props['build.versionCode'].toInteger()
  30. def nextCode = currentCode + 1
  31. props['build.versionCode'] = nextCode.toString()
  32. props.store(propsFile.newWriter(), null)
  33. return nextCode
  34. }
  35. // increments build version code on release builds
  36. task('incrementVersionCode') << {
  37. incrementVersionCode()
  38. }
  39. tasks.whenTaskAdded { task ->
  40. if (task.name == 'assembleRelease') {
  41. task.dependsOn 'incrementVersionCode'
  42. }
  43. }
  44. buildscript {
  45. // application variables
  46. ext.app_ver_name = "1.0"
  47. // google version codes
  48. ext.build_tools_ver = '25.0.3'
  49. ext.support_lib_ver = '25.3.1'
  50. ext.google_play_ver = '10.2.4'
  51. ext.constraint_layout_ver = '1.0.2'
  52. }
  53. android {
  54. compileSdkVersion 25
  55. buildToolsVersion "$build_tools_ver"
  56. defaultConfig {
  57. minSdkVersion 19
  58. targetSdkVersion 25
  59. applicationId "com.goposse.routersample"
  60. versionCode currentVersionCode()
  61. versionName "$app_ver_name"
  62. testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  63. }
  64. lintOptions {
  65. disable 'InvalidPackage'
  66. }
  67. compileOptions {
  68. sourceCompatibility JavaVersion.VERSION_1_8
  69. targetCompatibility JavaVersion.VERSION_1_8
  70. }
  71. buildTypes {
  72. release {
  73. // TODO: Add your own signing config for the release build.
  74. // Signing with the debug keys for now, so `flutter run --release` works.
  75. signingConfig signingConfigs.debug
  76. }
  77. }
  78. }
  79. dependencies {
  80. compile fileTree(dir: 'libs', include: ['*.jar'])
  81. // google
  82. compile "com.android.support:appcompat-v7:$support_lib_ver"
  83. compile "com.android.support:support-v13:$support_lib_ver"
  84. compile "com.android.support:support-v4:$support_lib_ver"
  85. // testing
  86. androidTestCompile "com.android.support:support-annotations:$support_lib_ver"
  87. androidTestCompile 'com.android.support.test:runner:0.5'
  88. androidTestCompile 'com.android.support.test:rules:0.5'
  89. }