From 0a934447a650dfd045807c3983a3418b97fed50f Mon Sep 17 00:00:00 2001 From: Konstantin Tabere Date: Fri, 6 Sep 2024 11:58:45 +0200 Subject: [PATCH] Added IconTask --- appexample/src/main/AndroidManifest.xml | 1 - .../mipmap-anydpi-v26/ic_launcher_round.xml | 6 - .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 9432 bytes .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 1404 -> 0 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 2898 -> 0 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 5863 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 982 -> 0 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 1772 -> 0 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 15300 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 1900 -> 0 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 3918 -> 0 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 23164 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 2884 -> 0 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 5914 -> 0 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 31390 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 3844 -> 0 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 7778 -> 0 bytes .../src/main/java/ch/ubique/linth/IconTask.kt | 91 +++++++++- .../linth/InjectMetaIntoManifestTask.kt | 1 - .../main/java/ch/ubique/linth/LinthPlugin.kt | 25 ++- .../java/ch/ubique/linth/common/IconUtils.kt | 167 ++++++++++++++++++ .../java/ch/ubique/linth/common/XmlParser.kt | 48 +++++ 22 files changed, 322 insertions(+), 17 deletions(-) delete mode 100644 appexample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 appexample/src/main/res/mipmap-hdpi/ic_launcher.png delete mode 100644 appexample/src/main/res/mipmap-hdpi/ic_launcher.webp delete mode 100644 appexample/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 appexample/src/main/res/mipmap-mdpi/ic_launcher.png delete mode 100644 appexample/src/main/res/mipmap-mdpi/ic_launcher.webp delete mode 100644 appexample/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 appexample/src/main/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 appexample/src/main/res/mipmap-xhdpi/ic_launcher.webp delete mode 100644 appexample/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 appexample/src/main/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 appexample/src/main/res/mipmap-xxhdpi/ic_launcher.webp delete mode 100644 appexample/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 appexample/src/main/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 appexample/src/main/res/mipmap-xxxhdpi/ic_launcher.webp delete mode 100644 appexample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 plugin-build/plugin/src/main/java/ch/ubique/linth/common/IconUtils.kt create mode 100644 plugin-build/plugin/src/main/java/ch/ubique/linth/common/XmlParser.kt diff --git a/appexample/src/main/AndroidManifest.xml b/appexample/src/main/AndroidManifest.xml index 8aabd22..8522405 100644 --- a/appexample/src/main/AndroidManifest.xml +++ b/appexample/src/main/AndroidManifest.xml @@ -5,7 +5,6 @@ android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" - android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.Gradlepluginlinthandroid"> - - - - - \ No newline at end of file diff --git a/appexample/src/main/res/mipmap-hdpi/ic_launcher.png b/appexample/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..e10003f4602267fcc426ff80a130eabfaeeed150 GIT binary patch literal 9432 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 Kmw_-CKmY()leWbG diff --git a/appexample/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/appexample/src/main/res/mipmap-hdpi/ic_launcher_round.webp deleted file mode 100644 index b2dfe3d1ba5cf3ee31b3ecc1ced89044a1f3b7a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2898 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 diff --git a/appexample/src/main/res/mipmap-mdpi/ic_launcher.png b/appexample/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..24a4d6f116625ffb081560936d15a60933e57604 GIT binary patch literal 5863 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 literal 0 HcmV?d00001 diff --git a/appexample/src/main/res/mipmap-mdpi/ic_launcher.webp b/appexample/src/main/res/mipmap-mdpi/ic_launcher.webp deleted file mode 100644 index 4f0f1d64e58ba64d180ce43ee13bf9a17835fbca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 982 zcmV;{11bDcNk&G_0{{S5MM6+kP&il$0000G0000l001ul06|PpNU8t;00Dqo+t#w^ z^1csucXz7-Qrhzl9HuHB%l>&>1tG2^vb*E&k^T3$FG1eQZ51g$uv4V+kI`0<^1Z@N zk?Jjh$olyC%l>)Xq;7!>{iBj&BjJ`P&$fsCfpve_epJOBkTF?nu-B7D!hO=2ZR}

C%4 zc_9eOXvPbC4kzU8YowIA8cW~Uv|eB&yYwAObSwL2vY~UYI7NXPvf3b+c^?wcs~_t{ ze_m66-0)^{JdOMKPwjpQ@Sna!*?$wTZ~su*tNv7o!gXT!GRgivP}ec?5>l1!7<(rT zds|8x(qGc673zrvYIz;J23FG{9nHMnAuP}NpAED^laz3mAN1sy+NXK)!6v1FxQ;lh zOBLA>$~P3r4b*NcqR;y6pwyhZ3_PiDb|%n1gGjl3ZU}ujInlP{eks-#oA6>rh&g+!f`hv#_%JrgYPu z(U^&XLW^QX7F9Z*SRPpQl{B%x)_AMp^}_v~?j7 zapvHMKxSf*Mtyx8I}-<*UGn3)oHd(nn=)BZ`d$lDBwq_GL($_TPaS{UeevT(AJ`p0 z9%+hQb6z)U9qjbuXjg|dExCLjpS8$VKQ55VsIC%@{N5t{NsW)=hNGI`J=x97_kbz@ E0Of=7!TQj4N+cqN`nQhxvX7dAV-`K|Ub$-q+H-5I?Tx0g9jWxd@A|?POE8`3b8fO$T))xP* z(X?&brZw({`)WU&rdAs1iTa0x6F@PIxJ&&L|dpySV!ID|iUhjCcKz(@mE z!x@~W#3H<)4Ae(4eQJRk`Iz3<1)6^m)0b_4_TRZ+cz#eD3f8V;2r-1fE!F}W zEi0MEkTTx}8i1{`l_6vo0(Vuh0HD$I4SjZ=?^?k82R51bC)2D_{y8mi_?X^=U?2|F{Vr7s!k(AZC$O#ZMyavHhlQ7 zUR~QXuH~#o#>(b$u4?s~HLF*3IcF7023AlwAYudn0FV~|odGH^05AYPEfR)8p`i{n zwg3zPVp{+wOsxKc>)(pMupKF!Y2HoUqQ3|Yu|8lwR=?5zZuhG6J?H`bSNk_wPoM{u zSL{c@pY7+c2kck>`^q1^^gR0QB7Y?KUD{vz-uVX~;V-rW)PDcI)$_UjgVV?S?=oLR zf4}zz{#*R_{LkiJ#0RdQLNC^2Vp%JPEUvG9ra2BVZ92(p9h7Ka@!yf9(lj#}>+|u* z;^_?KWdzkM`6gqPo9;;r6&JEa)}R3X{(CWv?NvgLeOTq$cZXqf7|sPImi-7cS8DCN zGf;DVt3Am`>hH3{4-WzH43Ftx)SofNe^-#|0HdCo<+8Qs!}TZP{HH8~z5n`ExcHuT zDL1m&|DVpIy=xsLO>8k92HcmfSKhflQ0H~9=^-{#!I1g(;+44xw~=* zxvNz35vfsQE)@)Zsp*6_GjYD};Squ83<_?^SbALb{a`j<0Gn%6JY!zhp=Fg}Ga2|8 z52e1WU%^L1}15Ex0fF$e@eCT(()_P zvV?CA%#Sy08_U6VPt4EtmVQraWJX` zh=N|WQ>LgrvF~R&qOfB$!%D3cGv?;Xh_z$z7k&s4N)$WYf*k=|*jCEkO19{h_(%W4 zPuOqbCw`SeAX*R}UUsbVsgtuG?xs(#Ikx9`JZoQFz0n*7ZG@Fv@kZk`gzO$HoA9kN z8U5{-yY zvV{`&WKU2$mZeoBmiJrEdzUZAv1sRxpePdg1)F*X^Y)zp^Y*R;;z~vOv-z&)&G)JQ{m!C9cmziu1^nHA z`#`0c>@PnQ9CJKgC5NjJD8HM3|KC(g5nnCq$n0Gsu_DXk36@ql%npEye|?%RmG)

FJ$wK}0tWNB{uH;AM~i diff --git a/appexample/src/main/res/mipmap-xhdpi/ic_launcher.png b/appexample/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..a0ea661ce3a09e3ba6ffc18b67c0ce4d8212f03a GIT binary patch literal 15300 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 WM$|VvGB~>c0000o6o6Gy zRq6Ap5(_{XLdXcL-MzlN`ugSdZY_`jXhcENAu)N_0?GhF))9R;E`!bo9p?g?SRgw_ zEXHhFG$0{qYOqhdX<(wE4N@es3VIo$%il%6xP9gjiBri+2pI6aY4 zJbgh-Ud|V%3O!IcHKQx1FQH(_*TK;1>FQWbt^$K1zNn^cczkBs=QHCYZ8b&l!UV{K z{L0$KCf_&KR^}&2Fe|L&?1I7~pBENnCtCuH3sjcx6$c zwqkNkru);ie``q+_QI;IYLD9OV0ZxkuyBz|5<$1BH|vtey$> z5oto4=l-R-Aaq`Dk0}o9N0VrkqW_#;!u{!bJLDq%0092{Ghe=F;(kn} z+sQ@1=UlX30+2nWjkL$B^b!H2^QYO@iFc0{(-~yXj2TWz?VG{v`Jg zg}WyYnwGgn>{HFaG7E~pt=)sOO}*yd(UU-D(E&x{xKEl6OcU?pl)K%#U$dn1mDF19 zSw@l8G!GNFB3c3VVK0?uyqN&utT-D5%NM4g-3@Sii9tSXKtwce~uF zS&Jn746EW^wV~8zdQ1XC28~kXu8+Yo9p!<8h&(Q({J*4DBglPdpe4M_mD8AguZFn~ ztiuO~{6Bx?SfO~_ZV(GIboeR9~hAym{{fV|VM=77MxDrbW6`ujX z<3HF(>Zr;#*uCvC*bpoSr~C$h?_%nXps@A)=l_;({Fo#6Y1+Zv`!T5HB+)#^-Ud_; zBwftPN=d8Vx)*O1Mj+0oO=mZ+NVH*ptNDC-&zZ7Hwho6UQ#l-yNvc0Cm+2$$6YUk2D2t#vdZX-u3>-Be1u9gtTBiMB^xwWQ_rgvGpZ6(C@e23c!^K=>ai-Rqu zhqT`ZQof;9Bu!AD(i^PCbYV%yha9zuoKMp`U^z;3!+&d@Hud&_iy!O-$b9ZLcSRh? z)R|826w}TU!J#X6P%@Zh=La$I6zXa#h!B;{qfug}O%z@K{EZECu6zl)7CiNi%xti0 zB{OKfAj83~iJvmpTU|&q1^?^cIMn2RQ?jeSB95l}{DrEPTW{_gmU_pqTc)h@4T>~& zluq3)GM=xa(#^VU5}@FNqpc$?#SbVsX!~RH*5p0p@w z;~v{QMX0^bFT1!cXGM8K9FP+=9~-d~#TK#ZE{4umGT=;dfvWi?rYj;^l_Zxywze`W z^Cr{55U@*BalS}K%Czii_80e0#0#Zkhlij4-~I@}`-JFJ7$5{>LnoJSs??J8kWVl6|8A}RCGAu9^rAsfCE=2}tHwl93t0C?#+jMpvr7O3`2=tr{Hg$=HlnjVG^ewm|Js0J*kfPa6*GhtB>`fN!m#9J(sU!?(OSfzY*zS(FJ<-Vb zfAIg+`U)YaXv#sY(c--|X zEB+TVyZ%Ie4L$gi#Fc++`h6%vzsS$pjz9aLt+ZL(g;n$Dzy5=m=_TV(3H8^C{r0xd zp#a%}ht55dOq?yhwYPrtp-m1xXp;4X;)NhxxUpgP%XTLmO zcjaFva^}dP3$&sfFTIR_jC=2pHh9kpI@2(6V*GQo7Ws)`j)hd+tr@P~gR*2gO@+1? zG<`_tB+LJuF|SZ9tIec;h%}}6WClT`L>HSW?E{Hp1h^+mlbf_$9zA>!ug>NALJsO{ mU%z=YwVD?}XMya)Bp;vlyE5&E_6!fzx9pwrdz474!~g(M6R?N? diff --git a/appexample/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/appexample/src/main/res/mipmap-xhdpi/ic_launcher_round.webp deleted file mode 100644 index 1b9a6956b3acdc11f40ce2bb3f6efbd845cc243f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3918 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�(p-{x$&=IACIfoAR!za)F-^da-t3#0Dycnp zwO~NVXwXCl;jE<}>%@xz|=8fIJAB?>+E{7)|4l${4ngA3G|=r z2Dyv;VVWSgZx9Wj>qUjleGl3Ei9K4>h!(lPS%8VOG>Xu0%6VDz^O=bjJmuP7>DeUv zrbI}MlHB^^d?{zv6d=@_ZD2lg1&G7UjnVN{1}9WkaM3H~btX0GtSzB+tZ^qRgWo4m z!GmimlG$=wgXCnr6j@m<1gAL46#T~5Bnm=2{^@>|t&`9mkEPddj zAvG~@Tv~TAm2i%VW}R-g(Z0)z-Y|szHr@rk>4MAyG*Ma*7Yh#H7(!-5>DZ@8r;_dx z{prSe<>~099F8vsYd2xff7uAS%7{S)f(|@me3t2$iy&NEc7OUEchp@9A|X;;IA>8!oX+y(BKJ$EzV* znR$z;!L$s7uy@{OT~nG#B!NRraT8(X##Ho!0r_o@gg0CA-9H^;-uE&?$2$nHv_00o z%cbuUc-tCx$Uh&EZ4Nf4Zgqv)Y6>usG3>GeQnxx_Z6+PcbX-+ysbt1hQ`K1LDpOE? zrAhIZhSN9yVIAOa22gn577tbc&i3|3V8NWy&!tw##`}9*x}gtI^h1DzZRA>UuaJG) zaZ7j)dq!O}{?#8Y7~7i6fHh4{`pL?>-18|p!S75Y#^DM>-S3)vuZG+Q7l@ek zQP~#cBpWgg#mApc_sPYjpw8odQuRokmTkzcNl`^CcKB7e&;zViV;{Y{o^Y$%7i0m# z62%#1Lq!RC?}lK>%mp}T!3Xv;L*0v*>USLm``N%>w>@fwC+#T&Tx2bN4w(20JB}oU zuSa6v^kXi0xPs?pbaOHnyiqq6By1EZY9OZ^^QA>{q-Hsd&m`pbQ%8121aWG-F5xf zlZ%;B{;C>X19|`^_?dVyCq>n+41w7|!tUS!{9rHlbhX=SZO5CQ^;!Du_E7*`GiR^Q w)2!4MKjfSAeNMHcA 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 literal 0 HcmV?d00001 diff --git a/appexample/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/appexample/src/main/res/mipmap-xxxhdpi/ic_launcher.webp deleted file mode 100644 index aa7d6427e6fa1074b79ccd52ef67ac15c5637e85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3844 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

UmY2RIYtNPVDpE$%vda+HD#3m z&VuXJ{BK&Qe+rBa7eq}Q(bq|tn(RrJAk|ztj2(i{d>nmQnM?;HF2k&9sA6up5tmjl z7lySlzMbifH17-m-Lwa_F&e7nOH?ESi3#ckR3tsM+jsck3`oG!uMS}|eAwVXv>}qxwq?QY%QJ0}r@^;fhuUA9W z*BVl>TGo&N004@xSiwDUXUvp51sVmqO3m)=B55aPwf@0=e}cN+$-BdKxY`YrT_4)0 z_d10#i44Q*rFr8MC>*)v$EJvz``(pb{e&*6k+b zsMz%($|1+8hn8c2?P(l@;Rb&CsZeYoCI3?2!LqjbwPXW3z4G$Qfj=cT5Yb%vY0(AX oeb?AaKtwrnc|$|zzw9vfvn^aJJ!zd)XFXqqy0000001=f@-~a#s diff --git a/plugin-build/plugin/src/main/java/ch/ubique/linth/IconTask.kt b/plugin-build/plugin/src/main/java/ch/ubique/linth/IconTask.kt index ec60c51..c7d9f79 100644 --- a/plugin-build/plugin/src/main/java/ch/ubique/linth/IconTask.kt +++ b/plugin-build/plugin/src/main/java/ch/ubique/linth/IconTask.kt @@ -1,8 +1,13 @@ package ch.ubique.linth +import ch.ubique.linth.common.IconUtils import ch.ubique.linth.common.getMergedManifestFile +import com.android.build.gradle.BaseExtension import org.gradle.api.DefaultTask +import org.gradle.api.artifacts.ProjectDependency import org.gradle.api.tasks.Input +import org.gradle.api.tasks.InputFile +import org.gradle.api.tasks.Optional import org.gradle.api.tasks.TaskAction import java.io.File import kotlin.math.max @@ -15,12 +20,17 @@ abstract class IconTask : DefaultTask() { } @get:Input - abstract var flavors: Set + abstract var flavorAndBuildType: Set> + + @get:InputFile + @get:Optional + abstract var targetWebIcon: File? @TaskAction fun iconAction() { val moduleDir = File(project.rootDir, project.name) val buildDir = project.layout.buildDirectory.asFile.get() + val targetWebIcon = targetWebIcon val gradleLastModified = max( File(moduleDir, "build.gradle").lastModified(), @@ -29,7 +39,7 @@ abstract class IconTask : DefaultTask() { val generatedResDir = File("$buildDir/generated/res/launcher-icon/") - flavors.forEach { flavor -> + flavorAndBuildType.forEach { (flavor, buildType) -> // get banner label val defaultLabelEnabled = false//android.defaultConfig.launcherIconLabelEnabled val flavorLabelEnabled = true//flavor.launcherIconLabelEnabled @@ -40,8 +50,81 @@ abstract class IconTask : DefaultTask() { null } - val manifestFile = project.getMergedManifestFile(flavor, "debug") - println("ManifestFile: ${manifestFile.path}") + val manifestFile = project.getMergedManifestFile(flavor, buildType) + + val androidModules: List = project.configurations + .asSequence() + .flatMap { it.dependencies } + .filterIsInstance() + .map { it.dependencyProject } + .distinct() + .mapNotNull { it.extensions.findByType(BaseExtension::class.java) } + .toList() + + val resDirs: List = androidModules + .flatMap { + listOfNotNull( + it.sourceSets.findByName(flavor), + it.sourceSets.findByName("main") + ) + } + .flatMap { it.res.srcDirs } + .filter { !it.path.contains("generated") } + + val allIcons = IconUtils.findIcons(resDirs, manifestFile) + + if (targetWebIcon != null) { + targetWebIcon.delete() + + // Search for web icon source + val webIconSource = ( + (File(moduleDir, "src/${flavor.lowercase()}").listFiles() ?: arrayOf()) + + (File(moduleDir, "src/main").listFiles() ?: arrayOf()) + + (moduleDir.listFiles() ?: arrayOf()) + ).find { it.name.matches(Regex(".*(web|playstore|512)\\.(png|webp)")) } + ?: IconUtils.findLargestIcon(allIcons) // Fallback if not found + + if (webIconSource == null) { + println("$name: web icon source not found") + } else if (bannerLabel.isNullOrEmpty()) { + // No label, so we only copy the sourceIcon + println("$name: web icon: $webIconSource") + webIconSource.copyTo(targetWebIcon, overwrite = true) + } else { + println("$name: web icon: $webIconSource") + IconUtils.drawLabel(webIconSource, targetWebIcon, bannerLabel, adaptive = false) + } + } + + if (bannerLabel.isNullOrEmpty()) { + // No label + println("$name: skipped icon labelling") + return + } + + allIcons.forEach iconsForEach@{ original -> + val resTypeName = original.parentFile.name + val originalBaseName = original.name.substringBefore(".") + val targetDir = File("${generatedResDir}/${flavor.lowercase()}/$resTypeName") + + val modified = targetDir.listFiles { file -> + file.name.matches(Regex("$originalBaseName\\.[^.]+")) + }?.firstOrNull() + + if (modified != null + && original.lastModified() <= modified.lastModified() + && gradleLastModified <= modified.lastModified() + ) { + return@iconsForEach + } else { + println("bannerlabel is $bannerLabel") + val target = File(targetDir, original.name) + targetDir.mkdirs() + original.copyTo(target, overwrite = true) + IconUtils.createLayeredLabel(target, bannerLabel, originalBaseName.endsWith("_foreground")) + } + + } } } diff --git a/plugin-build/plugin/src/main/java/ch/ubique/linth/InjectMetaIntoManifestTask.kt b/plugin-build/plugin/src/main/java/ch/ubique/linth/InjectMetaIntoManifestTask.kt index 0a4c832..4d0d4a4 100644 --- a/plugin-build/plugin/src/main/java/ch/ubique/linth/InjectMetaIntoManifestTask.kt +++ b/plugin-build/plugin/src/main/java/ch/ubique/linth/InjectMetaIntoManifestTask.kt @@ -34,7 +34,6 @@ abstract class InjectMetaIntoManifestTask : DefaultTask() { @get:Input abstract var flavorAndBuildType: Set> - @TaskAction fun injectMetadataIntoManifest() { flavorAndBuildType.forEach { (flavor, buildType) -> diff --git a/plugin-build/plugin/src/main/java/ch/ubique/linth/LinthPlugin.kt b/plugin-build/plugin/src/main/java/ch/ubique/linth/LinthPlugin.kt index 58b0c5c..5d0c12c 100644 --- a/plugin-build/plugin/src/main/java/ch/ubique/linth/LinthPlugin.kt +++ b/plugin-build/plugin/src/main/java/ch/ubique/linth/LinthPlugin.kt @@ -38,18 +38,35 @@ abstract class LinthPlugin : Plugin { val iconTask = project.tasks.register("generateAppIcon", IconTask::class.java) { iconTask -> - val flavors = mutableSetOf() + val flavorAndBuildType = mutableSetOf>() androidExtension.applicationVariants.forEach { variant -> val flavor = variant.flavorName.capitalize() - flavors.add(flavor) + val buildType = variant.buildType.name.capitalize() + flavorAndBuildType.add(flavor to buildType) } - iconTask.flavors = flavors + iconTask.flavorAndBuildType = flavorAndBuildType + iconTask.targetWebIcon = null } //hook iconTask into android build process project.afterEvaluate { + + val buildDir = project.layout.buildDirectory.asFile.get() + + androidExtension.productFlavors.configureEach { flavor -> + // Add the property 'launcherIconLabel' to each product flavor and set the default value to its name + //flavor.set("launcherIconLabel", flavor.name) + //flavor.ext.set("launcherIconLabelEnabled", (Boolean) null) + + // Add generated icon path to res-SourceSet. This must be here otherwise it is too late! + val sourceSet = androidExtension.sourceSets.maybeCreate(flavor.name) + sourceSet.res { + srcDir("$buildDir/generated/res/launcher-icon/${flavor.name}/") + } + } + androidExtension.applicationVariants.forEach { variant -> val variantName = variant.name.capitalize() variant.outputs.forEach { output -> @@ -61,8 +78,6 @@ abstract class LinthPlugin : Plugin { } } - - project.tasks.register("uploadToUbDiag", UploadToUbDiagTask::class.java) { uploadTask -> uploadTask.uploadKey = extension.uploadKey.get() diff --git a/plugin-build/plugin/src/main/java/ch/ubique/linth/common/IconUtils.kt b/plugin-build/plugin/src/main/java/ch/ubique/linth/common/IconUtils.kt new file mode 100644 index 0000000..1c03438 --- /dev/null +++ b/plugin-build/plugin/src/main/java/ch/ubique/linth/common/IconUtils.kt @@ -0,0 +1,167 @@ +package ch.ubique.linth.common + +import java.awt.* +import java.awt.geom.AffineTransform +import java.awt.image.BufferedImage +import java.io.File +import javax.imageio.ImageIO + +object IconUtils { + + private const val DEFAULT_ICON_NAME = "ic_launcher" + + /** + * Retrieve the app icon from the application manifest + */ + private fun getIconName(manifestFile: File): String? { + if (manifestFile.isDirectory || manifestFile.exists().not()) { + return null + } + + val xmlParser = XmlParser(manifestFile) + val fileName = xmlParser.findProperty("application", "android:icon") + + return fileName?.split("/")?.get(1) + } + + /** + * Finds all icon files matching the icon specified in the given manifest. + */ + fun findIcons(resDirs: List, manifest: File): List { + val iconName = getIconName(manifest) ?: DEFAULT_ICON_NAME + + for (resDir in resDirs) { + if (resDir.exists()) { + val result = mutableListOf() + resDir.walkTopDown().maxDepth(1) + .filter { it.isDirectory && (it.name.startsWith("drawable") || it.name.startsWith("mipmap")) } + .forEach { dir -> + dir.walkTopDown().filter { it.isFile && it.name.matches(Regex(".*$iconName.(png|webp)")) } + .forEach { result.add(it) } + dir.walkTopDown().filter { it.isFile && it.name.matches(Regex(".*${iconName}_foreground.(png|webp|xml)")) } + .forEach { result.add(it) } + } + if (result.isNotEmpty()) return result + } + } + + return emptyList() + } + + /** + * Creates a layered drawable putting the label banner over the launcher icon. + */ + fun createLayeredLabel(iconFile: File, bannerLabel: String, adaptive: Boolean) { + val iconName = iconFile.name.substringBefore(".") + val iconExt = iconFile.name.substringAfter(".") + val iconNameOverlay = "${iconName}_overlay" + val iconOverlayFile = File(iconFile.parentFile, "$iconNameOverlay.png") + iconOverlayFile.delete() + + val iconNameOriginal = "${iconName}_original" + val iconOriginalFile = File(iconFile.parentFile, "$iconNameOriginal.$iconExt") + iconOriginalFile.delete() + + val resType = if (iconFile.parentFile.name.startsWith("mipmap")) "mipmap" else "drawable" + + // Create upper layer, transparent image with the same size as iconFile + val (sourceWidth, sourceHeight) = if (iconExt.equals("xml", ignoreCase = true)) { + Pair(512, 512) + } else { + val img = ImageIO.read(iconFile) + Pair(img.width, img.height) + } + val overlayBitmap = createTransparentImage(sourceWidth, sourceHeight) + + // Draw label to upper layer + drawLabelOnImage(overlayBitmap, bannerLabel, adaptive) + ImageIO.write(overlayBitmap, "png", iconOverlayFile) + + // Move iconFile to iconFile-lower-layer + iconFile.renameTo(iconOriginalFile) + + // Save layer list XML into iconFile + val layerListFile = File(iconFile.parentFile, "$iconName.xml") + val layerListXml = """ + | + | + | + | + | + | + """.trimMargin() + + layerListFile.writeText(layerListXml) + } + + fun drawLabel(sourceFile: File, targetFile: File, label: String, adaptive: Boolean) { + val img = ImageIO.read(sourceFile) + drawLabelOnImage(img, label, adaptive) + val fileExtension = sourceFile.extension + ImageIO.write(img, fileExtension, targetFile) + } + + private fun drawLabelOnImage(img: BufferedImage, label: String, adaptive: Boolean) { + val sourceWidth = img.width + val sourceHeight = img.height + val dp = img.width / 108.0 + + val g = GraphicsEnvironment.getLocalGraphicsEnvironment().createGraphics(img) + g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON) + g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON) + + val scale = if (adaptive) 1.0 else 1.5 + + val anchorRel = if (adaptive) 0.6 else 0.65 + val anchorX = (sourceWidth * anchorRel).toInt() + val anchorY = (sourceHeight * anchorRel).toInt() + + val bannerTransform = AffineTransform() + bannerTransform.rotate(Math.toRadians(-45.0), anchorX.toDouble(), anchorY.toDouble()) + g.transform = bannerTransform + + val bannerHeight = (scale * sourceHeight / 5).toInt() + val banner = Rectangle(anchorX - sourceWidth, anchorY - bannerHeight / 2, sourceWidth * 2, bannerHeight) + + // Draw banner shadow + val shadow1 = Rectangle(banner).apply { grow(0, (scale * 0.5 * dp).toInt()) } + g.color = Color(0, 0, 0, 58) + g.fill(shadow1) + + val shadow2 = Rectangle(banner).apply { size = Dimension(width, (height + scale * dp).toInt()) } + g.fill(shadow2) + + // Draw banner + g.color = Color.WHITE + g.fill(banner) + + // Set font and calculate size + val labelFontSize = (scale * sourceHeight / 7).toInt() + val labelFont = Font(Font.SANS_SERIF, Font.PLAIN, labelFontSize) + g.font = labelFont + val fontMetrics = g.fontMetrics + val labelHeight = fontMetrics.ascent - fontMetrics.descent + val labelWidth = fontMetrics.stringWidth(label.uppercase()) + + g.color = Color.decode("#273c56") + g.drawString(label.uppercase(), anchorX - labelWidth / 2, anchorY + labelHeight / 2) + } + + private fun createTransparentImage(width: Int, height: Int): BufferedImage { + val img = BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB) + val g = GraphicsEnvironment.getLocalGraphicsEnvironment().createGraphics(img) + g.background = Color(0, true) + g.clearRect(0, 0, width, height) + g.dispose() + return img + } + + /** + * Find the largest launcher icon drawable. + */ + fun findLargestIcon(iconFiles: List): File? { + val filteredIconFiles = iconFiles.filter { !it.name.contains("_foreground") } + + return filteredIconFiles.maxByOrNull { it.length() } + } +} diff --git a/plugin-build/plugin/src/main/java/ch/ubique/linth/common/XmlParser.kt b/plugin-build/plugin/src/main/java/ch/ubique/linth/common/XmlParser.kt new file mode 100644 index 0000000..dc5a7f0 --- /dev/null +++ b/plugin-build/plugin/src/main/java/ch/ubique/linth/common/XmlParser.kt @@ -0,0 +1,48 @@ +package ch.ubique.linth.common + +import org.w3c.dom.Document +import org.w3c.dom.Element +import java.io.File +import javax.xml.parsers.DocumentBuilderFactory + +class XmlParser( + file: File, +) { + + private val root: Element + + init { + val document = parseXml(file) + document.documentElement.normalize() + root = document.documentElement + } + + fun findProperty(tag: String, property: String): String? { + val nodeList = root.childNodes + for (i in 0 until nodeList.length) { + val node = nodeList.item(i) + + if (node.nodeType == Document.ELEMENT_NODE) { + val element = node as Element + if (element.tagName == tag) { + // Access attributes + val attributes = element.attributes + for (j in 0 until attributes.length) { + val attribute = attributes.item(j) + if (attribute.nodeName == property) { + return attribute.nodeValue + } + } + return null + } + } + } + return null + } + + private fun parseXml(file: File): Document { + val documentBuilderFactory = DocumentBuilderFactory.newInstance() + val docBuilder = documentBuilderFactory.newDocumentBuilder() + return docBuilder.parse(file) + } +} \ No newline at end of file