From 2090fd23126cf8d384bfae9eb4692b1f64e95c5e Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Sat, 16 Aug 2025 14:08:04 +0800 Subject: [PATCH] migrate gradle kts Signed-off-by: bggRGjQaUbCoE --- android/app/build.gradle | 110 ------------------ android/app/build.gradle.kts | 75 ++++++++++++ .../drawable-hdpi/ic_launcher_foreground.png | Bin 2960 -> 0 bytes .../drawable-hdpi/ic_launcher_monochrome.png | Bin 2960 -> 0 bytes .../drawable-mdpi/ic_launcher_foreground.png | Bin 1973 -> 0 bytes .../drawable-mdpi/ic_launcher_monochrome.png | Bin 1973 -> 0 bytes .../drawable-xhdpi/ic_launcher_foreground.png | Bin 3852 -> 0 bytes .../drawable-xhdpi/ic_launcher_monochrome.png | Bin 3852 -> 0 bytes .../ic_launcher_foreground.png | Bin 5575 -> 0 bytes .../ic_launcher_monochrome.png | Bin 5575 -> 0 bytes .../ic_launcher_foreground.png | Bin 7688 -> 0 bytes .../ic_launcher_monochrome.png | Bin 7688 -> 0 bytes android/build.gradle | 59 ---------- android/build.gradle.kts | 67 +++++++++++ .../gradle/wrapper/gradle-wrapper.properties | 6 +- android/settings.gradle | 25 ---- android/settings.gradle.kts | 26 +++++ 17 files changed, 170 insertions(+), 198 deletions(-) delete mode 100644 android/app/build.gradle create mode 100644 android/app/build.gradle.kts delete mode 100644 android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png delete mode 100644 android/app/src/main/res/drawable-hdpi/ic_launcher_monochrome.png delete mode 100644 android/app/src/main/res/drawable-mdpi/ic_launcher_foreground.png delete mode 100644 android/app/src/main/res/drawable-mdpi/ic_launcher_monochrome.png delete mode 100644 android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png delete mode 100644 android/app/src/main/res/drawable-xhdpi/ic_launcher_monochrome.png delete mode 100644 android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png delete mode 100644 android/app/src/main/res/drawable-xxhdpi/ic_launcher_monochrome.png delete mode 100644 android/app/src/main/res/drawable-xxxhdpi/ic_launcher_foreground.png delete mode 100644 android/app/src/main/res/drawable-xxxhdpi/ic_launcher_monochrome.png delete mode 100644 android/build.gradle create mode 100644 android/build.gradle.kts delete mode 100644 android/settings.gradle create mode 100644 android/settings.gradle.kts diff --git a/android/app/build.gradle b/android/app/build.gradle deleted file mode 100644 index 7acf3e4f..00000000 --- a/android/app/build.gradle +++ /dev/null @@ -1,110 +0,0 @@ -plugins { - id "com.android.application" - id "kotlin-android" - id "dev.flutter.flutter-gradle-plugin" -} - -def localProperties = new Properties() -def localPropertiesFile = rootProject.file('local.properties') -if (localPropertiesFile.exists()) { - localPropertiesFile.withReader('UTF-8') { reader -> - localProperties.load(reader) - } -} - -def flutterVersionCode = localProperties.getProperty('flutter.versionCode') -if (flutterVersionCode == null) { - flutterVersionCode = '1' -} - -def flutterVersionName = localProperties.getProperty('flutter.versionName') -if (flutterVersionName == null) { - flutterVersionName = '1.0' -} - -def keystorePropertiesFile = rootProject.file('key.properties') -def keystoreProperties = new Properties() -if (keystorePropertiesFile.exists()) { - keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) -} - -def _filePath = System.getenv("KEYSTORE") ?: keystoreProperties["storeFile"] -def _storeFile = _filePath != null ? file(_filePath) : null -def _storePassword = System.getenv("KEYSTORE_PASSWORD") ?: keystoreProperties["storePassword"] -def _keyAlias = System.getenv("KEY_ALIAS") ?: keystoreProperties["keyAlias"] -def _keyPassword = System.getenv("KEY_PASSWORD") ?: keystoreProperties["keyPassword"] - -android { - compileSdkVersion flutter.compileSdkVersion - - namespace 'com.example.piliplus' - ndkVersion flutter.ndkVersion - - compileOptions { - sourceCompatibility JavaVersion.VERSION_17 - targetCompatibility JavaVersion.VERSION_17 - } - - kotlinOptions { - jvmTarget = '17' - } - - sourceSets { - main.java.srcDirs += 'src/main/kotlin' - } - - defaultConfig { - // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "com.example.piliplus" - // You can update the following values to match your application needs. - // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - targetSdkVersion flutter.targetSdkVersion - versionCode flutterVersionCode.toInteger() - versionName flutterVersionName - minSdkVersion flutter.minSdkVersion - multiDexEnabled true - } - - signingConfigs { - // 添加签名配置 - if(_storeFile != null) { - release { - // 配置密钥库文件的位置、别名、密码等信息 - storeFile _storeFile - storePassword _storePassword - keyAlias _keyAlias - keyPassword _keyPassword - v1SigningEnabled true - v2SigningEnabled true - } - } - } - - buildTypes { - release { - // TODO: Add your own signing config for the release build. - // Signing with the debug keys for now, so `flutter run --release` works. - signingConfig _storeFile != null ? signingConfigs.release : signingConfigs.debug - proguardFiles( - getDefaultProguardFile("proguard-android-optimize.txt"), - "proguard-rules.pro" - ) - } - debug { - applicationIdSuffix ".debug" - } - } - - project.android.applicationVariants.all { variant -> - variant.outputs.each { output -> - output.versionCodeOverride = variant.versionCode - } - } -} - -flutter { - source '../..' -} - -dependencies { -} diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts new file mode 100644 index 00000000..614eda7d --- /dev/null +++ b/android/app/build.gradle.kts @@ -0,0 +1,75 @@ +import com.android.build.gradle.internal.api.ApkVariantOutputImpl +import org.jetbrains.kotlin.konan.properties.Properties + +plugins { + id("com.android.application") + id("kotlin-android") + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id("dev.flutter.flutter-gradle-plugin") +} + +android { + namespace = "com.example.piliplus" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_17.toString() + } + + defaultConfig { + applicationId = "com.example.piliplus" + minSdk = flutter.minSdkVersion + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + val keyProperties = Properties().also { + val properties = rootProject.file("key.properties") + if (properties.exists()) + it.load(properties.inputStream()) + } + + val config = keyProperties.getProperty("storeFile")?.let { + signingConfigs.create("release") { + storeFile = file(it) + storePassword = keyProperties.getProperty("storePassword") + keyAlias = keyProperties.getProperty("keyAlias") + keyPassword = keyProperties.getProperty("keyPassword") + enableV1Signing = true + enableV2Signing = true + } + } + + buildTypes { + all { + signingConfig = config ?: signingConfigs["debug"] + } + release { + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), + "proguard-rules.pro" + ) + } + debug { + applicationIdSuffix = ".debug" + } + } + + applicationVariants.all { + val variant = this + variant.outputs.forEach { output -> + (output as ApkVariantOutputImpl).versionCodeOverride = flutter.versionCode + } + } +} + +flutter { + source = "../.." +} diff --git a/android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png b/android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png deleted file mode 100644 index 5c2c8a38eca99ea837fdcc4a742cc38138b7f48a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2960 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 WIbU10y6nLZ1CDks$U2*wjQ;_-S&@tY diff --git a/android/app/src/main/res/drawable-mdpi/ic_launcher_monochrome.png b/android/app/src/main/res/drawable-mdpi/ic_launcher_monochrome.png deleted file mode 100644 index b22aad157131d73cca94eed6954e2c06d6941b6e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1973 zcmb_d`#;kQ1O8gVHj0SIBqRrEE=fiXM#K=xou-Wlb6K-@7n?PA;d6wIMdo(sxF5_q5=T`K*rGl>3*OQ|A&;s z0cVGJjU0$F-p(8EfeXRMqhql^e0;n?Sk#@kTj*%40WLPQXxTyq03^K}k=C9>&KC~Z z*~3edI{mtv}QY&|BT}jD*WlzY_-RaaQb$tAk1_=KT^98 zWkSZN?7QL9+7r{2A?92K^yXL5IRzc+;LhhLGoSF3SUQ?zQor51Lv4=n7p+#AjWDmVzTe zwC-qr<>$8?#jYikq&{;40n6ZCA36njWhL~V^v?5Xiu9Wvva)|{pzkeJ7Lfltn9LL@ zwO5-4aAWG<L}zW_bY3E()1-YI9!A|*AIv;6-*Rl@V`gkL5X;-VsJ7dyhA+sb z8Mv@%PYF|9o$SDPEm1}oCh9t8@#&95{)&&~i%;p$x#ak8h^ZPYEQ`%}052FtP28(v zq%`+y8kL9D`uqE-o>d8`(5pQ!Q0R_s+}+tJL7b;896gM0n8691{lWot9qIGfhx#WF>NLv!nWnhoX;J!N+n+ozd7QM|#LoPYHhF^W;wjL;Gt zx{)0jvn7)fSUF1-BQ$F7e|4n=Vyuau&h`)`TPX8vX$-SvV&p%7Tg_^#XB&fmGAr%% zRd)_RZ=Bb=fc(B-(H{db;@z&Q&~J(?*2?`}|J+cR;*=5%OOjAVM-tjCxYb^{toNhw z0S80E{EV3kL+(9&@x=qb+Oxu5c4|-*4PWvX?P4^hms*9BHvk~`=1%yrF~#XaD9|z9 zvKhjJ4%%65j$;+uU6Sxu~(hD>af5@n=rnn=^h z2~k<}O~`B8D;`6@XN|M4g}nNe}BYGjUgb6I}I>dXA?OM2~}l4RQ)}&g2uo~ zM@DNGi(PIvcblN)0B$BmTulcpfF7vnmUwIpiWsweFLULyFG;uZvp12IX0vVD!M5@i zKP9)_9{P+IuxUoNE z>~iEnzP?XU%s;Kk6UUnU_mM=vGPYrF!)OGRAYTeS#*1+27fwKqBL#+x>e$)HV$IVB zp}yMI6LIli>O=F!5atJ@h{1%DAmp19!F|REnwTe({cx3hla%G^`AI^B=Rd3=JRbDW zeRp^|8c;asG8v#%KV5rvGUW^eJkxlNKJAW9L}@zOFJ{{PDd*3cn1EW+DjeUAaJ_%h z7)&Duv}jQINL_aHOzKD8W!;IEy%NOk7n}K>!@Wszl@fBv%E%KTvS^ky6aB9k+9B;V WIbU10y6nLZ1CDks$U2*wjQ;_-S&@tY diff --git a/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png b/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png deleted file mode 100644 index 8e27ada1fd97b5912da56d0384f65c297479b08d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3852 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 diff --git a/android/app/src/main/res/drawable-xhdpi/ic_launcher_monochrome.png b/android/app/src/main/res/drawable-xhdpi/ic_launcher_monochrome.png deleted file mode 100644 index 8e27ada1fd97b5912da56d0384f65c297479b08d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3852 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 diff --git a/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png b/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png deleted file mode 100644 index 5c48a897ff69f98818b29ae191243d6c29c8f88f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5575 zcmeI0X*iT``^P6HONo0DS&E5DC=61TNz;s_pO7LU%g-8PP1X^aiZMnENre%So$T4e zSh8kkCPa1yS;o%)?)blaUOn%h7jxXlabDLs=W?IN_jBD>*j+uX6UT&(K_HM5x3w|% zAdn-NzdsH(&|*2S)dW5SpK3gOdf(0dsn5Sp>>xfqJ~EE3SWlaO-R)%Do;buWsR=jE^M7zZ1KZk1<)6!zCV`xt@mC9li8K$XUiY>lf%uJIs{P2c&^Ti`# zPEmGV-m!O=PCYjFessp6xlTBRp9sXCI_4rd$zuLWMOrLMsqCVoQEGqcwIlS4GbTLG zzC4s(Kl5ZYXtZi9@i%io^P4$p#Z@ZI{P*LB@H(G_#iX;}ahOqdLNr^efou+!O8d%%-jcJ<&g z1$Nk;RW402Fz3jJQ765!>X3xbZGv(C31 z8TRdXTa%|6UgRly=?t#*c<;qKy`x7jkPlo473hneA>AV5p?}PF{cEDPbTEMj2 zEs>i#Jf|F{Ry|a#!Ab-R3L2Up|6y~mr9|!L^2OH%*=V4KccpF8YWqcACZhrI`FY(W zbzR%_Oq%MR-9<1nSBsH>l@}M%JGb?=O)k7duy9yo&eGJU0}x6-M#sy0@m%+doE*^o ztr3wOW>GDWEl5-9Ph-Z|S z4-?+`(Nu5QQ>iuIEi)FdRXuF0$*uSvB?d|$0E)ox=!v$FJE@Wq+I3qM%%)~Kv(!A` zw@DH$2g&v#9IhFyd>@B;Cnz3My0~M$7VXtPmQ5*tYU1JTn$Nt*#f=w0wM|af&pn|q zNneERNZaeg4xg#KgdjQ#10iq*4Di_};q-6cRyg9xzx_KOBxK?rdb@0sqP-c)zBmr+ zQ}0{M8xmY+a{V)ty&WQz*IE;XJs1e>vnbN%mY-AhEduWk);do3tWPQ)?shyWVhW`a z;F@>LwSLdZS1kq4Mi@8Ky1eril1jYnH!m~}m(xo&;eJqr|JK(8&8C)izS^yWYY*Pa z=J$=_Ct=il=5}YMw9Yrdi*NiD%TxtcdZN)yAw`7I{7b z0h~l=H@IKr`bZP&z)+)+aLtq6R==`U4i+95mEim36B!5JIR{{u$7uBZx{1Y~aV5>a z++ftGVcKA9KW)&{qcC3>7?vIgxQ5IQAru6|1YI;Vg|QL@vZUBW9o&Osof!*{_u}Rk zv0rn#6rc!OQyi`{Z^3y_uP{HG5SvhO=>hYe|ARS`!h^Q^5hwEGHS?YU}_%H@9n0M$iqeRG~v9fO_%xq>}TTb znlq`GD$B*Czl$!W&7iuU@k3a4B)6E*b>|2ssHd6?Sg4>{% z(oZXDLVoq!P+zhL8BmBkeSXmH(tHCQPTq zNGO#taB~e_jEFK}8+)f^71L*0z5TIA?V#PfPy|NgprdG6cPAr@-1$nmXt!6X)e{sQ zoxKgrPuqaWI%cz~S^(uvCKGZ71)y!ewc>4SZxmar_9#ji%5)}G*D@j*$IW)Vb54>U zF_3O@j$T^mx|D||=}Z8i-sQ~M&d}XiXgDH5Su*U}o9rD_d%7>ku0?vxNA4}&yxv6E zjv@dU9)KF<>%RL*!bJT0v!Hj^59NYnmVvQfd6A zSE;KhH^yDXluv})UD8>Zs+$sYgAf!Yfhd+%QvQ26yXKspr>4=SLF!Zk0L#qE5KIzE%N! zVm}5z!;6C8+h&1b<9iL~FH<(sm(AtF0& zP6I6fX-wbP(ndrlO}26KIZQoG2P-j5h+VU;Zb{;mxSbs#C;x!a)r93pnHg|)*|`b4 z>%Lv%tmWZ78my=*^p;q(%1zXsP)wWTu{y!Ouh`hz8#!CbHiR`_I(biPDr9{cW_+G#A#)zfwM8Xs%Vk!r)*{JQBXs-jseG_lgLs zl=(BOdp^A+f94cS@RLeCtvV~{23T+OL5uT+hjA3i1`DF4K9>lVD-yV?2_TI&v^&&w ztfFy-pJS1txG`nnUL_}iUGK4xG+w*H`4CAHzgnZS5d3WJx64uIYk!q#s+>+Jg;Pp( z8-_r_78PH+)6wd88;9z#tQ$IF0pQuSCf&6e+)$uZoumx z#u?|6^FBG=`W!K~+`JrIZizcmwZ(o!E8I*{@pfQ?TdtzfWY<(r{`s7s&wtni7aEtp z)y>#+@Hj?7Q0vi%=yg>pTrMFh@nxH6uCj!HbW-=|c(J-Ly)PTd0_|2^9`Rn<+Wa0W zaba7Y?zY1@;Zd>S;FIVwu{vvcpoGSSpQ*Vub($s&YUO%6$j=U)@tK~o`Mvy-G;kyf zoreoQt|g$=6~&hOMpr9Z_fFzxIq|cCym80<>Mi^ODmIR5;5r4%?@@idHjmp(29;d< zC5N9SpXgGIfZ0ezKT9kL>2(>cXXuZ4Em3L=Hg>KBBZ;wZiTECVhTwG)+Gy;bolI!a)&}rA$}j zAbyVM0i%S(N=+Q}Km^5AJ}^Q*hF+C~ZSzOY60j@Vi>srC}5IfXYz+q zk*v+2n0FGWU?aASsI4`b)kh9N{1xb23oO5MAMZg^b+1}PYW(*6D&J@WMNsA0@z{nZ zA2@Bz1GfoTj?wAWtZpEl=>d!**KfoY^q5Jf8sgYSSx{V={pPwRV&BJ1gpcJs`|7?( zO)qiydsK=#HlftiJmsE2h#ir0!5f!ZQPpn(=vGt7AEVF9tT!W~S&d>5OFjbpP(-T8 zqT}>2zAlsRThp7ZwVl1|w_d_S46D>Tw?l6ft=`?p$zJ+F37!O~D<6`Pkmgba>~4@t zLiwscqHnj(ggBvM&N47_E%$0`-NI8Iaj>-E03?sxS{Obp#k(~6AGNL?e&AFZ&q}8@D;U zsmegIp+n&zZLesoA*xur`%%gh6S$etVjbM^5U{IZxz!^QgqCueYKXY>ssnanQ%35Y z=UAVIvcBH;PSwaKJtU5aFlJs&MP5628O#o@XfBjtiG5`|TbZXxP?8E5Y|Ppxpn$e=j#U8_4v6F!3{w7>}mt73#d&*5S!Ak&r>D^)$v zp*$eR$TKpXvLoqWXenqnninTALv&U(z=gt!9^hEz-f*NO_34-0CWKFk5D2G0)(woh z?mNhZFG^kN3NXb%|LzDaU0NEbL3>Y-7MTq*w^+KtBgGrv5aQAW+*@H4IR5W{jGen7 zN~a3mAx`~C?>b!0ro`vx`DrqBEid((nxetMG20wdN)pB>Y z0rb&goG1kW`FE4{GqYY_*zX2DDX%Gq*s3frZ6|2AxYCzb6LoYn%nyTud<=%~G=@qW zvW;%13}+x&et-?XNAEqe_KSVB^00h*K>cwfMA3I;H+0aB$#ZHx$a?yvGv+jEooG-S zvV9X+;j+i@qt>Y(DAUv~F)dtk^V&bx4*{|UfP|@^k_E_IjI(O;5Ccu%*?66}*3=50 z6cqM%wZP6eG7!jhPEzsckzoiv=f}^6l|G}dN6HCT=FO&xWvjCMKm*TUaqj|oPDFCu zOod^1`bztR5Yu<21aYVDP}VY5*>3Wo*1ypx4(Ye8nk2hsAE~)8pZ~x0`H3puOGvFa zm>;y8UFqvh(oz8luJ8-YT?A$5?Jzd-sd31&*yqt3g?KGC_$o(AVOVucdbqQ2W;Gf^ z=@x-J7ALey*`(XyDB(*j+uX6UT&(K_HM5x3w|% zAdn-NzdsH(&|*2S)dW5SpK3gOdf(0dsn5Sp>>xfqJ~EE3SWlaO-R)%Do;buWsR=jE^M7zZ1KZk1<)6!zCV`xt@mC9li8K$XUiY>lf%uJIs{P2c&^Ti`# zPEmGV-m!O=PCYjFessp6xlTBRp9sXCI_4rd$zuLWMOrLMsqCVoQEGqcwIlS4GbTLG zzC4s(Kl5ZYXtZi9@i%io^P4$p#Z@ZI{P*LB@H(G_#iX;}ahOqdLNr^efou+!O8d%%-jcJ<&g z1$Nk;RW402Fz3jJQ765!>X3xbZGv(C31 z8TRdXTa%|6UgRly=?t#*c<;qKy`x7jkPlo473hneA>AV5p?}PF{cEDPbTEMj2 zEs>i#Jf|F{Ry|a#!Ab-R3L2Up|6y~mr9|!L^2OH%*=V4KccpF8YWqcACZhrI`FY(W zbzR%_Oq%MR-9<1nSBsH>l@}M%JGb?=O)k7duy9yo&eGJU0}x6-M#sy0@m%+doE*^o ztr3wOW>GDWEl5-9Ph-Z|S z4-?+`(Nu5QQ>iuIEi)FdRXuF0$*uSvB?d|$0E)ox=!v$FJE@Wq+I3qM%%)~Kv(!A` zw@DH$2g&v#9IhFyd>@B;Cnz3My0~M$7VXtPmQ5*tYU1JTn$Nt*#f=w0wM|af&pn|q zNneERNZaeg4xg#KgdjQ#10iq*4Di_};q-6cRyg9xzx_KOBxK?rdb@0sqP-c)zBmr+ zQ}0{M8xmY+a{V)ty&WQz*IE;XJs1e>vnbN%mY-AhEduWk);do3tWPQ)?shyWVhW`a z;F@>LwSLdZS1kq4Mi@8Ky1eril1jYnH!m~}m(xo&;eJqr|JK(8&8C)izS^yWYY*Pa z=J$=_Ct=il=5}YMw9Yrdi*NiD%TxtcdZN)yAw`7I{7b z0h~l=H@IKr`bZP&z)+)+aLtq6R==`U4i+95mEim36B!5JIR{{u$7uBZx{1Y~aV5>a z++ftGVcKA9KW)&{qcC3>7?vIgxQ5IQAru6|1YI;Vg|QL@vZUBW9o&Osof!*{_u}Rk zv0rn#6rc!OQyi`{Z^3y_uP{HG5SvhO=>hYe|ARS`!h^Q^5hwEGHS?YU}_%H@9n0M$iqeRG~v9fO_%xq>}TTb znlq`GD$B*Czl$!W&7iuU@k3a4B)6E*b>|2ssHd6?Sg4>{% z(oZXDLVoq!P+zhL8BmBkeSXmH(tHCQPTq zNGO#taB~e_jEFK}8+)f^71L*0z5TIA?V#PfPy|NgprdG6cPAr@-1$nmXt!6X)e{sQ zoxKgrPuqaWI%cz~S^(uvCKGZ71)y!ewc>4SZxmar_9#ji%5)}G*D@j*$IW)Vb54>U zF_3O@j$T^mx|D||=}Z8i-sQ~M&d}XiXgDH5Su*U}o9rD_d%7>ku0?vxNA4}&yxv6E zjv@dU9)KF<>%RL*!bJT0v!Hj^59NYnmVvQfd6A zSE;KhH^yDXluv})UD8>Zs+$sYgAf!Yfhd+%QvQ26yXKspr>4=SLF!Zk0L#qE5KIzE%N! zVm}5z!;6C8+h&1b<9iL~FH<(sm(AtF0& zP6I6fX-wbP(ndrlO}26KIZQoG2P-j5h+VU;Zb{;mxSbs#C;x!a)r93pnHg|)*|`b4 z>%Lv%tmWZ78my=*^p;q(%1zXsP)wWTu{y!Ouh`hz8#!CbHiR`_I(biPDr9{cW_+G#A#)zfwM8Xs%Vk!r)*{JQBXs-jseG_lgLs zl=(BOdp^A+f94cS@RLeCtvV~{23T+OL5uT+hjA3i1`DF4K9>lVD-yV?2_TI&v^&&w ztfFy-pJS1txG`nnUL_}iUGK4xG+w*H`4CAHzgnZS5d3WJx64uIYk!q#s+>+Jg;Pp( z8-_r_78PH+)6wd88;9z#tQ$IF0pQuSCf&6e+)$uZoumx z#u?|6^FBG=`W!K~+`JrIZizcmwZ(o!E8I*{@pfQ?TdtzfWY<(r{`s7s&wtni7aEtp z)y>#+@Hj?7Q0vi%=yg>pTrMFh@nxH6uCj!HbW-=|c(J-Ly)PTd0_|2^9`Rn<+Wa0W zaba7Y?zY1@;Zd>S;FIVwu{vvcpoGSSpQ*Vub($s&YUO%6$j=U)@tK~o`Mvy-G;kyf zoreoQt|g$=6~&hOMpr9Z_fFzxIq|cCym80<>Mi^ODmIR5;5r4%?@@idHjmp(29;d< zC5N9SpXgGIfZ0ezKT9kL>2(>cXXuZ4Em3L=Hg>KBBZ;wZiTECVhTwG)+Gy;bolI!a)&}rA$}j zAbyVM0i%S(N=+Q}Km^5AJ}^Q*hF+C~ZSzOY60j@Vi>srC}5IfXYz+q zk*v+2n0FGWU?aASsI4`b)kh9N{1xb23oO5MAMZg^b+1}PYW(*6D&J@WMNsA0@z{nZ zA2@Bz1GfoTj?wAWtZpEl=>d!**KfoY^q5Jf8sgYSSx{V={pPwRV&BJ1gpcJs`|7?( zO)qiydsK=#HlftiJmsE2h#ir0!5f!ZQPpn(=vGt7AEVF9tT!W~S&d>5OFjbpP(-T8 zqT}>2zAlsRThp7ZwVl1|w_d_S46D>Tw?l6ft=`?p$zJ+F37!O~D<6`Pkmgba>~4@t zLiwscqHnj(ggBvM&N47_E%$0`-NI8Iaj>-E03?sxS{Obp#k(~6AGNL?e&AFZ&q}8@D;U zsmegIp+n&zZLesoA*xur`%%gh6S$etVjbM^5U{IZxz!^QgqCueYKXY>ssnanQ%35Y z=UAVIvcBH;PSwaKJtU5aFlJs&MP5628O#o@XfBjtiG5`|TbZXxP?8E5Y|Ppxpn$e=j#U8_4v6F!3{w7>}mt73#d&*5S!Ak&r>D^)$v zp*$eR$TKpXvLoqWXenqnninTALv&U(z=gt!9^hEz-f*NO_34-0CWKFk5D2G0)(woh z?mNhZFG^kN3NXb%|LzDaU0NEbL3>Y-7MTq*w^+KtBgGrv5aQAW+*@H4IR5W{jGen7 zN~a3mAx`~C?>b!0ro`vx`DrqBEid((nxetMG20wdN)pB>Y z0rb&goG1kW`FE4{GqYY_*zX2DDX%Gq*s3frZ6|2AxYCzb6LoYn%nyTud<=%~G=@qW zvW;%13}+x&et-?XNAEqe_KSVB^00h*K>cwfMA3I;H+0aB$#ZHx$a?yvGv+jEooG-S zvV9X+;j+i@qt>Y(DAUv~F)dtk^V&bx4*{|UfP|@^k_E_IjI(O;5Ccu%*?66}*3=50 z6cqM%wZP6eG7!jhPEzsckzoiv=f}^6l|G}dN6HCT=FO&xWvjCMKm*TUaqj|oPDFCu zOod^1`bztR5Yu<21aYVDP}VY5*>3Wo*1ypx4(Ye8nk2hsAE~)8pZ~x0`H3puOGvFa zm>;y8UFqvh(oz8luJ8-YT?A$5?Jzd-sd31&*yqt3g?KGC_$o(AVOVucdbqQ2W;Gf^ z=@x-J7ALey*`(XyDB(Dv1-%|eW+2ZEvhkNRn@MoI#i9KMrm5acAM)~Y&pqefGj7iNeG+MSN1K6`n-&6rFzD)_j3E%Rit`VQ3as?p zkro4gxV$wjyiMF6d;8w^bb$E!`d)EzbMbn3-^1aGyQkxa&70g12yc-tO3lCJiqq-B zM>@OfIL19Law-lti#b{8yhT>563Zub)R5t*TyUtk2|MC-seU?QAzyIyS0Y2)9MTC_ zjTH*Qski_5qLhtyW!AMMcw||jip?CtP+|~q63uGEU{j-U5W-N^S?k&0eihn^5XBXxg zhD%pn`$;Rar|D0bCd}gw2_~|?GV1uK*`hFl+qjXA;rI$d5anL14(f^}uA%jD*K%#! zY)kG#uDF#B3i7bdanWxPMZ_3Sk2L4{y7iF-I>(ZyjXwLa`tu@>bY#H>lZonv(~0n4 zdXp4Q5K+?M&QR?dapIx8l>s?pC`NGf?o(@a%F!DOG>kxZ)o(9yiTCOLgyYw;v65PS zUKzK1qUaA5xU}%}SpFG-3vs`I7`wyH$b^_IUwzVKhr-!3G_)K}2mNv@E-hX1ZIsq- zk9W1??FujNR8S8Nz`tw?G_@4}9O#0i60p~)fqM$21Yf$9cmJQ5&t8oj_pXwx`^K+H zquS%2aPJrhSe3W)7Z^^sU#}U;@b;-)TW`9OLAr=n6E%R+M^4~ye5j?{cwU8qXAQ|W zr|O>%eU6rTzn?|qOy&o!9{t{)O3E{#vLv)qb4wJ7U&LNL#XEKLkh;nzXAeS&0?ABZ z7cGk{_M%}tJUDHC;LrTcR}=52KJVYQ*~$ZQY9KdG5CrmMp&WR?SjFR^mDJm5b<=42 zBNZTXPH4~=N*=|^8K!AyjHJk62M&MEv99=c1Gzkq-zfIlgY&6+U;d~@T8Y6bYHXH$ zn0$n!I^`hKcu?5q(MrDjCTi%c`gocCWZ=cGR?k7*&x&~DY9Nd=Q5?qfOrZ|%aXQxc z8c(GXIH_`Pe0KJBCtRF7O!${zY=A()RX63jVsV}N*d!&m2zeN)(OG|dM6^d0&l?dQ zb+TsW^0-ZsbtxKaJrW2KX3X|QXMw&j;1cxkOUyO>@>%4wvsZY@Reo@ot`7^7$DRuJ z;__GQl;iLX!ZiNQ>1waL1tG{CO5e-ojgYF`coVGiws9*`saB%w1IZlw@W(|^#5RXN zHXa(YFDT%7SIy)uT3Ihk6}klUqhTiqd!01Xlr*869&_^yj8*$(0@)cNtfMBtUQ&_~ zmUV>VivvSxHOY8=G0;LP2xL?j)!x@FX*n=lXe??Ot z-M*1Os=-hy?;oH$H>g+I-Od5rwrs8Z-KGoEwjiix-jLPVYy}l-04i1))K~y;JW4D3 zFAu#o2}y#5{AXpkR4K(=dr&?sp{xphX7Nw@2xqqu_M)6*8dU{55bXw9*`4+9m6$gC zmlybw{Py!2sQ;N@DKy5C{-A~8vHF#Kl3!Qfhbv9{RUZN$AgOvmg>$ZLiUytuu4t#! z<&K#(gg-8G;@S?09F($*Q>$W@7KZJ&RSYl8Rr!`hyuzVjiLWt&iosY516B1<58GeU zih*qhIWI_VNXlN#_IQ|li5r*bWiGcCipT_(2}Q)1Jreq_K*{8#7FDD%Rw-W8T!LUh zS~?nd`x~nfe;Z1F$r^XK8Y*z#;__rqx8AiAjaS8KwA`9%VqRhts65#MK1sDZY&6=D zJ%ZTXBa6Ka7i;cIa?6C0aDjI)&RexP5B<-=jva3`Xx;HyM6#{~%D0-G8ff5447A>J z=c+kI=~&K6%^n=3sxUK?hfyHxBRaM(oe`R-d3V>t-q!9}>#bi<7D5b5%v5XymIf@$ ze|0c(gr*cCWJl1}1R6(@6TT#F&ZusS9e+uOk31}~rltnvS;k}i)1g+X$nqQecwT_} zw9~jZ`0V7Hl{Bqqmj}wQe=IXkIH6z)DXAj{N42obi6Z2!nbdaR(#el@73YLdc}1Q5 z&79+DRbIn+)^?;hk&3p4pFwQ_H*GDS-J{P8V-<<8Q}LhLqtwfn9JF#*s{)#++}V%D zM+;mZep;HeZl<5S?lynw%#UUFT#+KY^1c->ZHWrAB1CB`WUp5YNHD*1Y=QQww;SfH zCK?+IM~oS1yL$C~ztrKf+ZOh;d^qN5W~=Mbn_|ZPtC3+Jc1Rr7?&9ylK5+AA_#gkI z3rth z9Obd@C)IG0Jk2Y9UD@WM=9(D--Ac?zEO>QPbWLA_@J@mB0)JVDiad;u4#Cmw@h&Y? zV!s`2bf(+I{(+xsx4jx)-uub;P%53@v86Cv9d^SSbv6JhH3*Zf?RId;z>eTAj$San zh%Xjt=Iij;BKwr)sWzExa^(P*Qfz%U&)9Z2s>dF$k7O1eNNcECDi83m+`WjkwvPh_ zp1Z3odne3dIIj@$(v;x+#-m5Yo;J1xZ!C0u_+HB zgI@6DW-L(XKm{!2 z$o_*S|M$}B@!XQ9tZz4UeVL^xUOwMEGM>l^I)taWwtS=xyFz%P(yVN9oJxd$2XBAc z$E6LO<2*4XW3yiQ@t3>5To^t}M=#&sYcgs`Tgn1AT5Bcz>I>RnyDC4r$Dq`_9rW+f zKdTsBgw@VW(ls5Io6#ezCPm#(?J7U|=R79P@8-8!6E17Pf-oR}erkJZoEh`+@g{sf zq@V9o?$%x}acUHSHhe|v$!yL}2W%v-S7PPtV=&oI#60itO!h8|HIPyuf+@BF4W_vf z$tQ)4Y5W?-KfIaK@qx zo-stK??U#Xw;ILLBbQdRyow)kg<9|&e)v{08Aljun<@SFCh1S4fM?==`=XpVnY(?| z*^q4AKJd7iGMC;!+Wz^ZlNe&^msL2PvO>Gvu*8Bfcq0DSnfcfgKds;!G!_bDXtMuq za|sNpkW(uX|_x0gM4)aM%3l2 zTWjJ$pZqz6I>AOY^kILa12bvPr@VZhgMO1>>>05A9 zkgeFh2xAq@-!`e#3W=gU7w|NiMyK^e=(*_op3gm{9I?FcRKIt=n;A7*k#GMJ)B^CP z4xp3%O#K(3#8h(T3R&PwMHI5oh$ZFdP|wd#XzGUWr=+`RYeU5WG=(b&u|(A3Y@$>S zRAM2(1({{Yt^4u6v(-gUFQo=yE~S0w9y9yaRVcWMgwj)5Vy6Nk3Sy*)91&81dx!eZ zo~oC7cqu!KctrfC)>AaZ|2oz1XpLH)?^?A`hUO}}*jggN^ACH90&bn68^%eSXrd^R zsxnzmo$6|&aQmA+#~%wOj3jwjaHzs&V9W6p8S>OeMX?zhCggXQ!S-Y(3m(#=GN~>P z<~^2_t%M&-@?L_|E=aOk7^kx7uMYWi$sCcd9)*KKu?l}uILkupwgz0R$JF)!Ui#Z4 zAhnN&tRsAUV=<9wYi{2~$JT3lG`~xhW_#vfW+j$AL8H`{?KW`|%W5BuS?DN?iCU87 zen#tG#rqVQ#mU|4g1ra?+3;;1$>g7GN5XUn5leSbE!buGc}op~fc=50dAZvSJ7bw< zblnCJmqCCE8kT;}hD-0cPn}S(`dTkq_$c7#`MXUW;ygP|t?$ zwfvx>G%)HLvMSrp|!Jvd#>XdK*@R-nwOtVM<(9t-hO0d-i7&QB4b0{g3^3!yoAzIr$mosMy(lN3^1H&R{G>3_*jn5Nzp3U=3z@NXF}+kQu%g1vJN#THfMEu z>Lw~?zDxt@!RLXNC@L$0sFn_^G+deo)l{Qr_b8}CJ{{Gp-m@TxVi%K~ zUq~{+I2kuy$J(6D-Fr6sZTOZmp#xk*#>K*GoNFzBp2%4wI z_f6$#z@n5eYV%jh8#>Q&B9$;5S;z4suPHs@u#5I4;gfDr4)CZd*Z#&L)9c)I&DEtc zI#(yq1`?(jneVxFc|nXWfEdA&9yUb5Rwjs*T&4PlyW(xR2>$&Y&pvf%f+8SicGb9` zM}qd>hu{85-J?M`c0H41=tEX0dj@LHjHIOF2`mZ2R_<$*?i;wnAr;FwRRCT#Rzi_e zw^y{=k5o1AX>`G>DiJ+~c*z#Qh%0tCet&2x@fCOhqUrq@w*BhCoq{y2hM5xWa~SuBWAUd&S?+y(iOI`y#kHkT&)d8# z%#!hZ@Ep^R1$;t>$CheT<@?1b^QPMarwWYhZ)YTRC#HHH!>E#m{g;~iu z0xnES)=R|VuhtIPjeegtJ;JAL-{YAkMH8vli@VQqK`a4-DTlE*7jWFVkT(ZfZZt;l zxp|ozSK6)K?o!|O7HxcSx3VLW9N<=XlQ-J^wR6L16vR}}PJbclYlWPU!j7>wZc{tTCL)6s3L(vPv-r0~D_PR`IIPo_!(I_dG7+C^9${k_mci^ z4yE~7B+#DUEqlWV6`h2_C-pC$%{4b*HAYClIaN9Jf3kMICl7odo&>b*A(C|1^V~riApYl$ z=8ZLQn+5n=#F{QDCfIZ&HvS!_mrmqP76P&YEl0v}F1>@M*=EW5=FyjZsnf5FcuCQF zfI=BfylwfLz>t^2f(F(?@n9Y#t#g z{lNHuk50|GL_W)W!!(7Uy%t5ef9DC#4N0ZINgigrbz%9;;Z4|9>8-)DQ(jh%RzNfl zqyg|9J1{hPjq)rZGA0WL8n{$Po%}5I-s_CHpKESshYTntie?#tZ8-_IfBt!6U0&Q% zhZ5VgFrGXKCUR!w!#L4@^@z5%ZRo)deeO7Pjdui|_!`_L9hhTZp3kuMbVj5TSru#! zQlKpwmp(u4)!YsE^d)-ce1O3AyKh1=#N;w^6iv-2N+R!N;NGj$Srjn|i}Sbd>;3h7 zi4=XwvzmBa;4YM2Gun7Aw?zI2a<1*zF-jj%b?0i0vku8y*LK$$n~P~xZ6Bey(Ti3a zHRUs;k+L2ZMZp@)uf1W9^fnMyDpzoDJ!_x!#hun|ve8Ht_2?Om$WyK2%<-~5miR#o zC3#p5WkPhRJlkdSskw=s-ZfQFsfNiZ7iV^*%6T5Q!}8Ax`@My63|Ln*=MPze{+da188<_ z-fvJk{Gh?8P?8QwJY6fV03{ zBxL(S#hgl-Hy-Yj@FGBl=iY z$R0rXAw4Rc3oAlzm%l_~FaEazE87g>B|bp4V`M=tl;zB8U!jT?g+RKur-rd0mjeLy z7}OTMO!hlE&EBwX8bp(0S~bDeq8q)Itvf5%ci_~9k71lRsUBfKlF-Km9LB?XpNaGk z|47Vzm2uFB%pxC^0LOc$r>$BksFJzJ!%j_qPstezM}g&V^8(0H1m=F=)VG3@%FQ8< z2r0v`bCltoLkvau{4UT@aYd4=&I{T54G;WDB}2%5MQh8Lei^;7U2O^s>QZr{q- zP@1Y122CyY0TjFx2S6u~+}_E=upFl!XB>u~V4PpK03cPdVFGw5!XZt#oP_tb+cVECBZfPS=Lf{!7 zh7#md5RXU<8N>!*4}rXaaYEWJ{r}ScNF>fw;tw$J5FbZJ@Y60tSMv_4Ox-^C{{T!G Bn(P1o diff --git a/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_monochrome.png b/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_monochrome.png deleted file mode 100644 index 7dc8ad1e55b7e749aae6be8506acb9cfa3aba3f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7688 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 Bn(P1o diff --git a/android/build.gradle b/android/build.gradle deleted file mode 100644 index 4729d3db..00000000 --- a/android/build.gradle +++ /dev/null @@ -1,59 +0,0 @@ -allprojects { - repositories { - google() - mavenCentral() - } -} - -rootProject.buildDir = '../build' -subprojects { - afterEvaluate { project -> - if (project.hasProperty('android')) { - project.android { - if (namespace == null) { - namespace project.group - } - } - - android { - compileOptions { - sourceCompatibility JavaVersion.VERSION_17 - targetCompatibility JavaVersion.VERSION_17 - } - - tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { - kotlinOptions { - jvmTarget = '17' - } - } - } - - Integer pluginCompileSdk = project.android.compileSdk - if (pluginCompileSdk != null) { - if (pluginCompileSdk < 31) { - project.logger.error( - "Warning: Overriding compileSdk version in Flutter plugin: " - + project.name - + " from " - + pluginCompileSdk - + " to 31 (to work around https://issuetracker.google.com/issues/199180389)." - + "\nIf there is not a new version of " + project.name + ", consider filing an issue against " - + project.name - + " to increase their compileSdk to the latest (otherwise try updating to the latest version)." - ) - project.android { - compileSdk 31 - } - } - } - } - } - project.buildDir = "${rootProject.buildDir}/${project.name}" -} -subprojects { - project.evaluationDependsOn(':app') -} - -tasks.register("clean", Delete) { - delete rootProject.buildDir -} diff --git a/android/build.gradle.kts b/android/build.gradle.kts new file mode 100644 index 00000000..eaa8e978 --- /dev/null +++ b/android/build.gradle.kts @@ -0,0 +1,67 @@ +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile + +allprojects { + repositories { + google() + mavenCentral() + } +} + +val newBuildDir: Directory = + rootProject.layout.buildDirectory + .dir("../../build") + .get() +rootProject.layout.buildDirectory.value(newBuildDir) + +subprojects { + val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name) + project.layout.buildDirectory.value(newSubprojectBuildDir) +} + +subprojects { + afterEvaluate { + if (project.extensions.findByName("android") != null) { + val androidExtension = + project.extensions.getByName("android") as com.android.build.gradle.BaseExtension + + if (androidExtension.namespace == null) { + androidExtension.namespace = project.group.toString() + } + + androidExtension.compileOptions { + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 + } + + project.tasks.withType().configureEach { + kotlinOptions { + jvmTarget = "17" + } + } + + val pluginCompileSdkStr = androidExtension.compileSdkVersion + val pluginCompileSdk = pluginCompileSdkStr + ?.removePrefix("android-") + ?.toIntOrNull() + if (pluginCompileSdk != null && pluginCompileSdk < 31) { + project.logger.error( + "Warning: Overriding compileSdk version in Flutter plugin: ${project.name} " + + "from $pluginCompileSdk to 31 (to work around https://issuetracker.google.com/issues/199180389).\n" + + "If there is not a new version of ${project.name}, consider filing an issue against ${project.name} " + + "to increase their compileSdk to the latest (otherwise try updating to the latest version)." + ) + androidExtension.setCompileSdkVersion(31) + } + } + + project.buildDir = File(rootProject.buildDir, project.name) + } +} + +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean") { + delete(rootProject.layout.buildDirectory) +} diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index 92c1ac1b..ac3b4792 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -1,7 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip -networkTimeout=10000 -validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists \ No newline at end of file +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip diff --git a/android/settings.gradle b/android/settings.gradle deleted file mode 100644 index 745cfa37..00000000 --- a/android/settings.gradle +++ /dev/null @@ -1,25 +0,0 @@ -pluginManagement { - def flutterSdkPath = { - def properties = new Properties() - file("local.properties").withInputStream { properties.load(it) } - def flutterSdkPath = properties.getProperty("flutter.sdk") - assert flutterSdkPath != null, "flutter.sdk not set in local.properties" - return flutterSdkPath - }() - - includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") - - repositories { - google() - mavenCentral() - gradlePluginPortal() - } -} - -plugins { - id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version '8.4.1' apply false - id "org.jetbrains.kotlin.android" version "1.9.22" apply false -} - -include ":app" \ No newline at end of file diff --git a/android/settings.gradle.kts b/android/settings.gradle.kts new file mode 100644 index 00000000..fb605bc8 --- /dev/null +++ b/android/settings.gradle.kts @@ -0,0 +1,26 @@ +pluginManagement { + val flutterSdkPath = + run { + val properties = java.util.Properties() + file("local.properties").inputStream().use { properties.load(it) } + val flutterSdkPath = properties.getProperty("flutter.sdk") + require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" } + flutterSdkPath + } + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id("dev.flutter.flutter-plugin-loader") version "1.0.0" + id("com.android.application") version "8.9.1" apply false + id("org.jetbrains.kotlin.android") version "2.1.0" apply false +} + +include(":app")