From 82d19253696e6a56f21ff8418ebf417c8a8b2772 Mon Sep 17 00:00:00 2001 From: yonghanJu Date: Wed, 4 Dec 2024 22:02:13 +0900 Subject: [PATCH 1/5] =?UTF-8?q?:sparkles:=20=ED=9A=8C=EC=9B=90=EA=B0=80?= =?UTF-8?q?=EC=9E=85=20api=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/ic_launcher-playstore.png | Bin 0 -> 23482 bytes .../java/com/whyranoid/walkie/KoinModules.kt | 2 +- .../res/drawable/ic_launcher_background.xml | 74 +++++++++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 4 +- .../mipmap-anydpi-v26/ic_launcher_round.xml | 4 +- .../res/mipmap-anydpi-v33/ic_launcher.xml | 6 - app/src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 1404 -> 1576 bytes .../mipmap-hdpi/ic_launcher_foreground.webp | Bin 0 -> 1750 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 2898 -> 3094 bytes app/src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 982 -> 1042 bytes .../mipmap-mdpi/ic_launcher_foreground.webp | Bin 0 -> 948 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 1772 -> 2038 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 1900 -> 2052 bytes .../mipmap-xhdpi/ic_launcher_foreground.webp | Bin 0 -> 2330 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 3918 -> 4204 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 2884 -> 3126 bytes .../mipmap-xxhdpi/ic_launcher_foreground.webp | Bin 0 -> 3686 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 5914 -> 6298 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 3844 -> 4054 bytes .../ic_launcher_foreground.webp | Bin 0 -> 4962 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 7778 -> 9048 bytes .../account/AccountDataSourceImpl.kt | 125 ++++++++++++++++-- .../data/datasource/account/AccountService.kt | 12 +- data/src/main/res/drawable/ic_walkie_logo.png | Bin 0 -> 10594 bytes .../screens/signin/SignInDoneScreen.kt | 10 +- 25 files changed, 208 insertions(+), 29 deletions(-) create mode 100644 app/src/main/ic_launcher-playstore.png create mode 100644 app/src/main/res/drawable/ic_launcher_background.xml delete mode 100644 app/src/main/res/mipmap-anydpi-v33/ic_launcher.xml create mode 100644 app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp create mode 100644 app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp create mode 100644 app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp create mode 100644 app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp create mode 100644 app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.webp create mode 100644 data/src/main/res/drawable/ic_walkie_logo.png diff --git a/app/src/main/ic_launcher-playstore.png b/app/src/main/ic_launcher-playstore.png new file mode 100644 index 0000000000000000000000000000000000000000..bba8c4ac6b4ab9245d1434f5ddb4468898d264a9 GIT binary patch literal 23482 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 z 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 literal 0 HcmV?d00001 diff --git a/app/src/main/java/com/whyranoid/walkie/KoinModules.kt b/app/src/main/java/com/whyranoid/walkie/KoinModules.kt index 4b9fdaf7..38e84201 100644 --- a/app/src/main/java/com/whyranoid/walkie/KoinModules.kt +++ b/app/src/main/java/com/whyranoid/walkie/KoinModules.kt @@ -171,7 +171,7 @@ val dataSourceModule = single { ChallengeDataSourceImpl(get()) } single { PostDataSourceImpl(get()) } single { UserDataSourceImpl(get()) } - single { AccountDataSourceImpl(get()) } + single { AccountDataSourceImpl(get(),get()) } single { FollowDataSourceImpl(get()) } single { RunningControlDataSourceImpl(get()) } single { CommunityDataSourceImpl(get()) } diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 00000000..ca3826a4 --- /dev/null +++ b/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml index eca70cfe..c4a603d4 100644 --- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -1,5 +1,5 @@ - - + + \ No newline at end of file diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml index eca70cfe..c4a603d4 100644 --- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -1,5 +1,5 @@ - - + + \ No newline at end of file diff --git a/app/src/main/res/mipmap-anydpi-v33/ic_launcher.xml b/app/src/main/res/mipmap-anydpi-v33/ic_launcher.xml deleted file mode 100644 index 6f3b755b..00000000 --- a/app/src/main/res/mipmap-anydpi-v33/ic_launcher.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/app/src/main/res/mipmap-hdpi/ic_launcher.webp index c209e78ecd372343283f4157dcfd918ec5165bb3..620a9459ea9495abfff73e4745ad915e2d820983 100644 GIT binary patch literal 1576 zcmV+@2G{vgNk&E>1^@t8MM6+kP&iBz1^@srN5ByfRR=+~P3JHEoFF376gpVpRNLlC z`MoSq=8BFsdO`v%0LML>P4V7$w&L`nDyAVH8PHq~wbL{9*$On7{xY?mb+viEXRVv5p>0fB-z? z4PETEaawKLvi$CDXeIdu7CA&RofW7gm*g(#|CzxC&~@x#3 zq|6GW#MvZW%4Cj|Y`{YAG8<8)OqmTb1P|T6#I~SJnUWQ<0CqFnD(sT-Hed=ia49Km zi_ozJB^#t<1Bd|t5NNV(+qP}nwyoJb+hG6zWYYiN%(iVa+jjpMxozW!)8{l>{Rdim z=MG3`&J0RgfIA0@kcx=R;il}S>89_d>!v5QkKN4>e?`cRw$l9&bg%92-zyc(228E zI8XJCB>D%l-l(C<#r7L1U1h&eiT{A$R^h^_kHDlqP@;bT@^6IY$d4t)O893r^y`$Z zf_)1wB_P>1I7+hCg?pYo3y}GqoK3mP0{WOHW&1|n9an5B?_G#{Naho6-vIJ$`8YlF zw2lENybxExK9a@QN7=pxK<0ZYP`a8Ta|wXH#;Fcg!oNjlGC;-$aw2c1M9Y!yay`Qo zknxe6z~3pMj1z7%JQ4sU$7-B*Gij&fUl5Sw7wqQf*8>NVcK*tNRE}81r{CG#CHVz_ z6rac(@7 zkpnoNXV0a7CQP8jM6nAlw)2+&jZ=wcYr+4DZ3A#jWgV5ITFnNMf5E-YlbFezea;gD zWO%}@N+=-?pmNh*2l{Je><2PD5#h3UpwLpXE7jgtnULlcbrmhb-oFB6`?{f(y=K`5 za-5kZ=$GVTzAXpTDtSt&A*w~v9}rT%p)+Y0(Ngp?*OA#~4dknNyQ8N8vR&!Ln3si4 zGFZLzwbU)ay!?R5P0K^G5C^3EK;{u|vWjgJC_YuT>f&sHuPYEA(L&rk-3tyhPQ^;I zh=MBt7^+;#_5x{NaH~=WfPyRWqUhHh;Hh>OeN3oXc4H;O<*P7A@(cAgk5%Ybph+@T zqA}tPkn#i8;r&z-|eVV1GV$9qRkl5+NXBWf91eZN&AX5O{5X(T5v*xOcbDJZpIE% ztl|?=e8TsnowP4#?V?wyWfz~yXaCeJdnXs*A0CmN+-;gyH1~n)ub-`f{PoS>i!pzr zvfR-@VEccec`SSE5$V1H@s9IQk%#K$!*V^nyM5?p*FVRN=tU za2b?)@Cw|9R5;{(mE(OoV6+6#)PTND~qO literal 1404 zcmV-?1%vuhNk&F=1pok7MM6+kP&il$0000G0000-002h-06|PpNX!5L00Dqw+t%{r zzW2vH!KF=w&cMnnN@{whkTw+#mAh0SV?YL=)3MimFYCWp#fpdtz~8$hD5VPuQgtcN zXl<@<#Cme5f5yr2h%@8TWh?)bSK`O z^Z@d={gn7J{iyxL_y_%J|L>ep{dUxUP8a{byupH&!UNR*OutO~0{*T4q5R6@ApLF! z5{w?Z150gC7#>(VHFJZ-^6O@PYp{t!jH(_Z*nzTK4 zkc{fLE4Q3|mA2`CWQ3{8;gxGizgM!zccbdQoOLZc8hThi-IhN90RFT|zlxh3Ty&VG z?Fe{#9RrRnxzsu|Lg2ddugg7k%>0JeD+{XZ7>Z~{=|M+sh1MF7~ zz>To~`~LVQe1nNoR-gEzkpe{Ak^7{{ZBk2i_<+`Bq<^GB!RYG+z)h;Y3+<{zlMUYd zrd*W4w&jZ0%kBuDZ1EW&KLpyR7r2=}fF2%0VwHM4pUs}ZI2egi#DRMYZPek*^H9YK zay4Iy3WXFG(F14xYsoDA|KXgGc5%2DhmQ1gFCkrgHBm!lXG8I5h*uf{rn48Z!_@ z4Bk6TJAB2CKYqPjiX&mWoW>OPFGd$wqroa($ne7EUK;#3VYkXaew%Kh^3OrMhtjYN?XEoY`tRPQsAkH-DSL^QqyN0>^ zmC>{#F14jz4GeW{pJoRpLFa_*GI{?T93^rX7SPQgT@LbLqpNA}<@2wH;q493)G=1Y z#-sCiRNX~qf3KgiFzB3I>4Z%AfS(3$`-aMIBU+6?gbgDb!)L~A)je+;fR0jWLL-Fu z4)P{c7{B4Hp91&%??2$v9iRSFnuckHUm}or9seH6 z>%NbT+5*@L5(I9j@06@(!{ZI?U0=pKn8uwIg&L{JV14+8s2hnvbRrU|hZCd}IJu7*;;ECgO%8_*W Kmw_-CKmY()leWbG diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp new file mode 100644 index 0000000000000000000000000000000000000000..5c46412fe73d6b14e5b89b0535490a87a246ad3d GIT binary patch literal 1750 zcmV;{1}XVcNk&G_1^@t8MM6+kP&iD%1^@srp+G1Q=1|+V4I}^mcuV$(P@A>^lR777 zaE!XN;3567gLfLm1>&5xZLRXBUI4rO`yQFga2O(p>wQ67reGq7<&7}=9Z3uaCXN30 zUuk5kkpzop=##-QG)DTl51UK?UH$*hOU^ByGqbjB+qP}nwrz73=l}hE|1(&Z*T*)(@vFVy7le_ z#8&NmV{~@vbk=DUq;0_Xm%P_O3;=*^^Ga=dwr$(CZQHhO+qP}nNZS7ih~|C-qtJN# zN$*7^QCJBixMh)r12RyS&0IvTETg$=9A&jj{9azRQ{gGIt3tZD75;99!t7>ND7(!v z^|-FgRzvPPjK+Vi%w|2Vj75n}__l(D;5tDpg$NeIs_fdlTAYTCr6Zw8yW=;bPD&$zb04*iC=Ku6;5s@^_ zRYA+YZl9LX3r2=cg^!iM2Hc^ttyaXlrCR-0Zdq2T6GXJcCUMRF7C!cRK?y!E_gXOJ zSr(xWq^5bcu!v8~w*Eh=$)5vQorEm}zZlW+ClOzkms;_Sk)UfaYI4ljR{sqeeVrgk z3n9jf@j@;|6`=C0$Sh)<1T2Ltx#>3NqT@A!&`yP`!nPO}-hd`>xx||P;}3xZjbe1k zO=&ptW5rhg6>D=aRs#e)n7`G3<#muw5P08a|3G#0VHr|0Q_ID;$zSXt`bA#JnktQ&GFg4F?8 z)#l7XFhDO@SKR7Q!bUSQ*W$#LX@I!~M+m!)fTa)(d63oa1bVS3<81*qW`AhFw*qt! zf=2)y=aW@UjyeL}Rd8b#5G~%Uc-xl1(U=neT1ZxQmO=ti;*M)`a3$btCDTek&NX79 z#S5y$hOGEZAZGk50u!W1%VuEz{F_?V6MiVw1PwrSQ5v-0=d@=c(ed8UM&m3 zFOgQl#sFbrt-=T(Q_BDsq5#DjRBXW%XdR%-EYg%nK(Mwl>; zg#kuNtSk#avZmlh1GIvH$*+}xh;e459f1YcD=`jWO(omb|3?it7YG+ygW-C?fUK*= zECh@>QD&nZ6eg{J;(maokk7U`mpN3-Nm;AQC1yMj#Cj|#LBPB);}>T`qPO#liPyR*%} zAzd-YU8NMOfh;+`)jm8x0C37M`Ib0u0|7IfI1nOpwblZ6zPH5m_8 z^R3e?G^`@)tq%alEjMT%W=_`vGTgN*8;Oak+!Q@N{Yku|XNz9F)3FmiN!r9gS2-5C zzUBn#KWJ}Rw8Sh z^m);ZFf%(WI*Ev`Z^RQD71pNMlgeXGw-gdM@3Q1gt;W8o&AH6H))GW??hK8M4D$u? z8a74^3&A7Aab2qeHX09 s*}Sk|h3H<6kOb37UK#OzK8Jd>3DH3x%C?NdPZ|U0HbqF>Hq)$ literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp index b2dfe3d1ba5cf3ee31b3ecc1ced89044a1f3b7a9..3b3c6e20e73f0eb704c024d2b72173f088354b16 100644 GIT binary patch literal 3094 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 literal 2898 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 diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/app/src/main/res/mipmap-mdpi/ic_launcher.webp index 4f0f1d64e58ba64d180ce43ee13bf9a17835fbca..38849482a82e49b049ff7061282132f86e34e477 100644 GIT binary patch literal 1042 zcmV+t1nv7$Nk&Er1ONb6MM6+kP&iEf0{{RoFTe{BCkHvQZPm)U@*Q`XQKU!OFml(u zzUJUIwry2e-~T6cONohSg-&V1tqD@s3rCV9MN%#^OKYq0{$J7)wXTJtf}-H2qch%l#xIZQXoUaD?`Y=VHxQm2~t4P zMqQAkwFd!+h=3pokOG1vNe~nQBtcSO#S$P%P!RF&mkIvj-=AMmtgJ#5@h>155Cj2` z0#OLRen65S{Q6;3=#YPOvZ%ckq;@^U#@G-_InnpXd(t!_SOPhST` z_9hjzYgSk6E1M~ChImvnNuuJ2ZQl_ZzSB_WO9u z9-;((^;Mj)MYVi3LeXp$={6u>$Yfecmyo%6LRr3Ue>fb57T!!i?S2o}hx z2-sjq8FQNe0BemYr6FxVg24aPj2_5>D8qOY&|ED;eJEwx2<$KrCJHFgX1NrhGtxf; zSip+w#&K(57s7%4l;u;8LP}Qv@vK?x$hH$EumcA;ylRk7=~7@hYi2u+SqWp4feIa# zV;)*8=qezb72budy27s3UX0#3EW<76iL)<7r9W$l49kSho#kevn^LA&8M2bQvCD+D z2GzcT|L68At5eMxwkOfsik2|Wf4K~42Eyk;FL+UyA*EUoG5|a6bj>{sW0316W{&*b zEeuVaBM$Zgs6DiOeVAK*@pLUQ98z{~+gBn3>T=7=vr+;)_8blnI(NKuW~b%URh>xo z(>62HHky|lX(Gj3>*!E!T3Y|f{mf_SNxq-|D%IvP*DvzpshSkWDb>3dxyVn2TTfKg zR7Iwy`uL{ed){$V{``&G1N{S{>L0js{ha(D;Vp_PXZkLPtnaJ}d&*xGU9( MvdQnFnB%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!TH-70X~s9|pm&q%DLN=ZFF2_ys(0KzL5uXq9g-n| z0T?GRWP9&5$N2zDo9DwV6Bq!_A^qXW(#*5(gLd5=zkf!;ueVatOi3>#jZ~m^+qP-P zx|vt8QMPT{wrxDyM%nfJ%C>D?%{YH)?Xyxjdw)%95&fTlKx5BowUy z6#Pcx(^V0#z9zn7SIGm@uBamC5WP2gMfRKSo5lO?(Hf7v3Y=`zA>Nj~|pW$l6qAn@JNKMaVJ+7pCjWs0NSTv6ER+eT1 z<^5F?zfB4D^2)gZrIB1u)34MDc-Pp+zGN z8&oI79{|uYDOM}i85UU7CLuPej){Y!X+kVjtT9ZtD11SDsyZx=iO!TW74H~^T7<8} zVbwR{Q4WB~hJK1)MWT&O15+d)=4qA)4g~Oth!rdT7MCM7MgAqpNt&L9Z-Cqz;s})I z#gDKF{bMBmj3}b##EVu~LAhB`_)1K%3tLF0CMvL1@cn{IBHl?ckR)&BSr+}0#YbMC3(AptbjsPZHWIf-Uc#$IG z*M6Ip1C$=%>-Tcu4iv1tqIvyGH)OZz+OZ6B#M#)k9(cRf02!k{{_j>S_4xGfi&{dN z(eJYz%Ua`YTO^~|Ihm+uI4g_>w9NO72$Vad!UvTOsq#T>&>6uxAEZ?~qbA_TP)*PY W!RnAN0)e`!3hT-%YtsUa&;kI>!pAQF literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp index 62b611da081676d42f6c3f78a2c91e7bcedddedb..c46905e74f9f531e7eafb461125ee7d7198ab98c 100644 GIT binary patch literal 2038 zcmVNV1_ zwttP?{5D})1LFd`17>?0J}&Lb#})O=%*@Qp>@X*nS(<;Lzh-oI@P#>90RB&IY0#Wo z21>)PH?*mgI+G5SK1!8}nVA&k4O}S9b`_4Qps8RDNs_Ew$yFGR)>ws=cn87#{vQdW zNU~bBb@X5Y1iUN%oO5&lM*zS=(#~www(Y&jMrYf$)!BT2?fZgl^{j1kG68a}{XZw? zlC9XbZQHhO+qSXZ?{9MEe-mN5)%JT*Wvl68=M$sU|4bXz>9+fvtzr(kxZSgrtDstz z(G5%&R}dvhGHuPZZQHhOThF#_9(}e0Nw&@E?teEAv7LO|wv9LjBFX3z{n<#zz4-fn@>$AfOA9L(GME4FPpvxGxvnB%lE~)(8**9=0G)=fq{! z!8HEE^qBe1J8U?%1#bcZ=McLt>-=l{=5g40Dvw!X_j=&Xh~5MQWg-4JPveg*Je2_IpY^kT1GwB813@ZTq04gHM0;5}!umPY61aF360~$RMmLzDHWI+;r z-@rC=pi}B5B|+09e}H5G2jC380wVf;xgv^S5(KTlrp%a0XJhH82q`<8B zToxa|o+!@4pz+Fi%y3lP_Pr!?KS&k}{}f?uYJEAMWNrxN`O7GLp&R8q@ge8Lz|e*Z zhLJ89GSs&R<~#vR;&lo(1TH$Kf`E83U5}YDQ~l(E5u_VJb<55`?rhd+b43Y~%=F0{ z={ge2d69B^E|L{?d}|pAW)6Yfzl;LR89|65kpX_n(5^B-vgV><4KtxK|i=D$&` z;D!KTp6u-hne|N+%FIt`!1auN6U8?vY)BlHwo1sClZ;o8dbPDO@}>Jfb(8$xC%z(3 zb5TVm4)^RC_-wWb0E}N7J&iNTa&Dy9sfoNBqnImy%k?NDi=G*#>hJo-)-rtY$l9~2 z4b+?%;@@-sr^wFv34?n+7tP@S(~e1&$(3XoFH-c(M3y;lKsi-^^MU{SN7k^8o~p7@ zMpoGItYu_GWR`aU*}C2*N#MFYYGCYh>auu{94@!#AuDeNRFjQ2-rp>G{jf$mPT)f> zG#oUMmM}3(^^*NXM7FE+NfLSNgBck7T?QFiHG0TmXC~E5^;6b20o@R4a9{^|jb#NH zr;90uo6H{qvQKl7Vcr8*6r<@RWO^bC zT&os|z9i>z(Fh?xkmA^sVUFUZ;FX3&&JFhkM!HTy$hOsi;-@Au->qT|GofhQZz7ww zJABB%z^AcGP%%Cg5a4V^Oz^+dq0LlhTDOWF6VHmC=}6N}p6!wwgFKq|PC@T))*Qtf z3>t7TlLSE|fjJcf0$D^6>tLP)djH5qy>VUZ`oL2D9{_yG@Wmp@vipuC0FJbA)-$>x zSi8#5Q80TyrUOS&`ORZd0@o4SOrBZiUxxirt67N`fG-KG;KusKRx*8X#GS6$nGx=z zLBXw##i7Z@t7ZJqAr}m*HLrLEFhAwT@zMepj86r7K+w-)nKgb*B0H3Z1_!ogs-Nad zKVE(;d2Dn4CrD=;aUw7>o*CC7vuy}%pbY-mYXGT-i3 zt$YB^zliTWBHo`>`Q0915>*ectSdzsSN-E0AkU?vU~4% zW^=E!%@7a-LNf?p_C~)k-ka#XeF2uxez*_ezPW+WO=db3=&Rk<>{k9Wcr5`rbIc_^8?)*=}`|FW{>OT`z1niAaNz5ObRlznsHD_o#Zx3&(p(9d!$raoCu| z-23(+asko{BEcan-Dz6S=`-y6c~6<<`944Mepi|a>*F`tur#)T5EsF=EmaFyJD;b* zBkcOV@4I{?4R`@hiM#OE7gu-c9h6hcIp>Jr$I+DXhVWB2-Vxx9$GTkbiXv*ql5 zcx66eKJjX-DJZfra0mjyJn_Po64+P4yDC1h+ke{f!iilUIsvkI&-Pxk5qr%{{P0zR UMlhbd?bQ#r&ly1&p9=OMVm$`iGXMYp literal 1772 zcmVQj4N+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/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher.webp index 948a3070fe34c611c42c0d3ad3013a0dce358be0..91dcb2c8e3526d3a46e39a6cbf99a6fe1c8eb2d8 100644 GIT binary patch literal 2052 zcmV+f2>bU^Nk&He2LJ$9MM6+kP&iEQ2LJ#sU%(d-RR@B$Z4>k7z3oR35fflolk5IB zao-43tNnj3DJ5^tIp>^n&N=6tbIv*EoRj+g{@>a8-7?1QG_VcO0Y&^dBXJ`MYKtJs zkz|U%uN&MpL6)esQvu=D@YSoQi{3+(^zgK-$fdL#q24D_njKhW{z?a0~6SCh+rZU;!<(ILJBAl#C)t zij>wz4<cw+qP|&S($(_nyi%RQ>RKsW2>@_>-$asonwt5P*^0i z1V3~SrAUfOal;A$=EUY()ls?mEhg)&M_uy;F98@QC!yfHu$%t z_|D+_G_a8p2MmFtVeke`N9Wg;gC4+wm<|4o!{4SM zJ{B^Vb;#2*5`I&OKdDkhe;oeqerI%(Ei*2}1V3bo7pAVSngRP*!f4Vp^&=nQ1^^Lm z;K5UoZ+Gh>+{Iqw03x5EI{s=7=&#=l*tdAu1C4wJyUA8=nFsjKgnq;30{=XF;kpeP zXN~s}ZuIMDBKmaiPx=WWkj6#A`QIBv3&0M!Giq(^<)Q{Xm%!4zEd`ox7 z!!XtcZLgi#45X=j6!8iw5M>)on6cMbU%}337UcK8D%J+; z&)e%YmT*h-MJddd=J7hly2^>fJd_8nJP12KVkkI z?+*t%(gm#Nt&OCMVyQsr4y|g23Mkua7s4%{i5xs6`Je-gtRE;6{7{oHPpt|zZAF|l z9>Q@Zd!s=E_xr`zp^7a%#cLxu%9q64q64^ltuib{MZS(9+^g;;f%i>Dy;gX||0Rgy zD8@j}A(#YrR<5*4`OFZ<^Q_j!Nu&!zR@z0RN<4D_K)GzV&giG*WXnrhWmrli(gkQ? z8M7KY2heKKOhlx+boC@DT6K3A$q&Tbqt#{-zM9p@)e%QyXHN!j53iHLb%%3+__i`l zw5lB_$(Bc0&1@rI09Z(#inT#WiL$?r;YXsJpbnaaR)0o2zyQp8-io!+MXJP8vMkC8 zCRJmpFq3>xB*qTuE7)q~ne2@LfZJJ59Y%5vHB#Tx0)W}vI$}6uZV?jij~Gk1Yh|mD zj>%E>QU%{6MQV;Po7u)&07T!z ze`+QZvCkj?!DreSBdC`IKO`~t4rLtUtZ@MFUd$?POnpmgNHSc8yz%ha z$>{pQtdppHtTGAxjQ5KJC{}S-2_hmp)}A1SKHH7buf%0en@CuH-tKKLu^tKF!0{r6 z_4DcQuP~i$^|Ob=jo`if*3c^w{E*)@bhmanMsUC1+jawa6~qb@%@4?_m|L3s3(G;q2wXWeA5<9@Z1&(T+*yB$FMSYjCrz zSSfH%(R2RD;*T@WI2p0kUL-UNwUiYL(B~*?fXTPczZ^9F{YQaeDpy+SiX}FHQix|O z^Rs~8;K!%&C%o^j|HCZHYytqax@tH!09o903Lvf`J;(AeU?U(w=LoQYRVDdvmq-d43f7$LF?i``SS*m6$jF!3_{c7r-a2x5x|FLJ1cV zFC|k#TJS?Zg%bJiP5N%p1D6MR07A@k@q^A+31|T$U=sfMtDyg@y!Y2bd|dzwki*)Y i9X(%ysQD5`tdB_WZ!cfmTylxKYXz2s4_GdpTM7Vf-REHd literal 1900 zcmV-y2b1_xNk&Fw2LJ$9MM6+kP&il$0000G0001A003VA06|PpNH75a00DqwTbm-~ zullQTcXxO9ki!OCRx^i?oR|n!<8G0=kI^!JSjFi-LL*`V;ET0H2IXfU0*i>o6o6Gy 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/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.webp new file mode 100644 index 0000000000000000000000000000000000000000..2bd275a92dfa9c2eb7f82f8d791f58bf79d277f8 GIT binary patch literal 2330 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 AegFUf literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp index 1b9a6956b3acdc11f40ce2bb3f6efbd845cc243f..fe17b821d431f5a99b06feb7f14e18013dc6b429 100644 GIT binary patch literal 4204 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 E0JN{&YXATM literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp index 9287f5083623b375139afb391af71cc533a7dd37..ae56d8395313be5ef987d929bde67c1b4d188d8c 100644 GIT binary patch literal 6298 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 Q#tEp#DD(nYEYkKe0PzjaJ^%m! literal 5914 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�(p-{x$&=IACIfoAR!za)F-^da-t3#0Dycnp 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 I2hvJi1n6F+cmMzZ literal 3844 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 K(e)@969NFrTGoaD literal 7778 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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/data/src/main/java/com/whyranoid/data/datasource/account/AccountDataSourceImpl.kt b/data/src/main/java/com/whyranoid/data/datasource/account/AccountDataSourceImpl.kt index 8d444385..b31564c4 100644 --- a/data/src/main/java/com/whyranoid/data/datasource/account/AccountDataSourceImpl.kt +++ b/data/src/main/java/com/whyranoid/data/datasource/account/AccountDataSourceImpl.kt @@ -1,18 +1,30 @@ package com.whyranoid.data.datasource.account +import android.content.Context +import android.graphics.Bitmap +import android.graphics.BitmapFactory +import androidx.annotation.DrawableRes +import com.whyranoid.data.R import com.whyranoid.data.getResult -import com.whyranoid.data.model.account.SignUpRequest import com.whyranoid.data.model.account.toLoginData import com.whyranoid.data.model.account.toUserInfo import com.whyranoid.domain.datasource.AccountDataSource import com.whyranoid.domain.model.account.LoginData import com.whyranoid.domain.model.account.UserInfo +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext import okhttp3.MediaType import okhttp3.MultipartBody import okhttp3.RequestBody import java.io.File +import java.io.FileOutputStream +import java.net.URL +import java.util.Locale -class AccountDataSourceImpl(private val accountService: AccountService) : AccountDataSource { +class AccountDataSourceImpl( + private val accountService: AccountService, + private val context: Context, +) : AccountDataSource { override suspend fun signUp( name: String, nickName: String, @@ -21,22 +33,35 @@ class AccountDataSourceImpl(private val accountService: AccountService) : Accoun agreeGps: Boolean, agreeMarketing: Boolean, ): Result { + val userNameBody = RequestBody.create(MediaType.parse("text/plain"), nickName) + val nameBody = RequestBody.create(MediaType.parse("text/plain"), name) + val authIdBody = RequestBody.create(MediaType.parse("text/plain"), authId) + val agreeGpsBody = RequestBody.create( + MediaType.parse("text/plain"), + agreeGps.toString().lowercase(Locale.ROOT) + ) + val agreeSubscriptionBody = RequestBody.create( + MediaType.parse("text/plain"), + agreeMarketing.toString().lowercase(Locale.ROOT) + ) + val profileImageBody = uploadImageFromUrl(profileUrl, "profileImg") + return kotlin.runCatching { - val request = SignUpRequest( - userName = nickName, - name = name, - profileImg = profileUrl ?: "", - authId = authId, - agreeGps = agreeGps, - agreeSubscription = agreeMarketing, + val response = accountService.signUp( + userNameBody, + nameBody, + profileImageBody, + authIdBody, + agreeGpsBody, + agreeSubscriptionBody ) - val response = accountService.signUp(request) - if (response.isSuccessful.not()) { throw Exception(response.errorBody().toString()) } else if (response.body() == null) throw Exception(response.message()) requireNotNull(response.body()?.walkieId?.toLong() ?: throw Exception("empty response")) + }.onFailure { + it.printStackTrace() } } @@ -59,7 +84,11 @@ class AccountDataSourceImpl(private val accountService: AccountService) : Accoun } } - override suspend fun changeMyInfo(walkieId: Long, nickName: String, profileUrl: String?): Result { + override suspend fun changeMyInfo( + walkieId: Long, + nickName: String, + profileUrl: String? + ): Result { return kotlin.runCatching { var imagePart: MultipartBody.Part? = null @@ -90,7 +119,77 @@ class AccountDataSourceImpl(private val accountService: AccountService) : Accoun override suspend fun leave(walkieId: Long): Result { return kotlin.runCatching { - accountService.leave(walkieId).getResult{ } + accountService.leave(walkieId).getResult { } } } + + private suspend fun uploadImageFromUrl( + imageUrl: String?, + partName: String + ): MultipartBody.Part { + return withContext(Dispatchers.IO) { + imageUrl?.let { url -> + makePartFromUrl(url, partName) + } ?: kotlin.run { + makePartFromRes(R.drawable.ic_walkie_logo, partName) + } + } + } + + private fun makePartFromRes( + @DrawableRes resId: Int, + partName: String + ): MultipartBody.Part { + val bitmap = BitmapFactory.decodeResource(context.resources, resId) + + // 임시 파일 생성 + val tempFile = File.createTempFile("drawable", ".png", context.cacheDir) + tempFile.deleteOnExit() + + // 비트맵을 PNG 파일로 저장 + val outputStream = FileOutputStream(tempFile) + bitmap.compress(Bitmap.CompressFormat.PNG, 100, outputStream) + outputStream.close() + + // MultipartBody.Part 생성 + val requestBody = RequestBody.create( + MediaType.parse("image/png"), + tempFile + ) + + return MultipartBody.Part.createFormData( + partName, // 서버에서 받을 파라미터 이름 + tempFile.name, + requestBody + ) + } + + private fun makePartFromUrl(url: String, partName: String): MultipartBody.Part { + // URL로부터 이미지 다운로드 + val connection = URL(url).openConnection() + val inputStream = connection.getInputStream() + + // 임시 파일 생성 + val tempFile = File.createTempFile("downloaded_image", ".jpg") + tempFile.deleteOnExit() + + // 입력 스트림을 파일로 저장 + inputStream.use { input -> + tempFile.outputStream().use { output -> + input.copyTo(output) + } + } + + // MultipartBody.Part 생성 + val requestBody = RequestBody.create( + MediaType.parse("image/jpg"), + tempFile + ) + + return MultipartBody.Part.createFormData( + partName, // 서버에서 받을 파라미터 이름 + tempFile.name, + requestBody + ) + } } diff --git a/data/src/main/java/com/whyranoid/data/datasource/account/AccountService.kt b/data/src/main/java/com/whyranoid/data/datasource/account/AccountService.kt index d8a21ec1..6262f3f2 100644 --- a/data/src/main/java/com/whyranoid/data/datasource/account/AccountService.kt +++ b/data/src/main/java/com/whyranoid/data/datasource/account/AccountService.kt @@ -5,14 +5,14 @@ import com.whyranoid.data.model.account.ChangeMyInfoResponse import com.whyranoid.data.model.account.LeaveResponse import com.whyranoid.data.model.account.LoginDataResponse import com.whyranoid.data.model.account.NickCheckResponse -import com.whyranoid.data.model.account.SignUpRequest import com.whyranoid.data.model.account.SignUpResponse import com.whyranoid.data.model.account.UserInfoResponse import okhttp3.MultipartBody +import okhttp3.RequestBody import retrofit2.Response -import retrofit2.http.Body import retrofit2.http.DELETE import retrofit2.http.GET +import retrofit2.http.Multipart import retrofit2.http.POST import retrofit2.http.Part import retrofit2.http.Query @@ -23,9 +23,15 @@ interface AccountService { @Query("userName") nickName: String, ): Response + @Multipart @POST(API.SIGN_UP) suspend fun signUp( - @Body signUpRequest: SignUpRequest, + @Part("userName") userName: RequestBody, + @Part("name") name: RequestBody, + @Part profileImg: MultipartBody.Part, + @Part("authId") authId: RequestBody, + @Part("agreeGps") agreeGps: RequestBody, + @Part("agreeSubscription") agreeSubscription: RequestBody, ): Response @GET(API.LOGIN) diff --git a/data/src/main/res/drawable/ic_walkie_logo.png b/data/src/main/res/drawable/ic_walkie_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c26ba9d2cf718e854131eb6c4b0475a12a1030e1 GIT binary patch literal 10594 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 Unit) { Surface(modifier = Modifier.background(Color.White)) { Column( - Modifier.fillMaxSize().padding(20.dp), + Modifier + .fillMaxSize() + .systemBarsPadding() + .padding(20.dp), horizontalAlignment = Alignment.Start, ) { Text( @@ -44,7 +48,9 @@ fun SignInDoneScreen(onSuccess: () -> Unit) { Text("워키와 건강한 라이프 함께해요!", style = WalkieTypography.Body1_Normal) Spacer(modifier = Modifier.weight(1f)) Button( - modifier = Modifier.fillMaxWidth().wrapContentHeight(), + modifier = Modifier + .fillMaxWidth() + .wrapContentHeight(), onClick = { onSuccess() }, From d0d5f7f2cd57ebbdc8c2e7983fdac9d0f2411d39 Mon Sep 17 00:00:00 2001 From: yonghanJu Date: Wed, 4 Dec 2024 22:34:51 +0900 Subject: [PATCH 2/5] =?UTF-8?q?:sparkles:=20=EB=9F=AC=EB=8B=9D=20=EC=A4=91?= =?UTF-8?q?=EC=A7=80=20=EC=83=81=ED=83=9C=20ui=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../screens/running/RunningScreen.kt | 88 ++++++++++++------- .../com/whyranoid/presentation/theme/Color.kt | 1 + 2 files changed, 59 insertions(+), 30 deletions(-) diff --git a/presentation/src/main/java/com/whyranoid/presentation/screens/running/RunningScreen.kt b/presentation/src/main/java/com/whyranoid/presentation/screens/running/RunningScreen.kt index 1e8bb9fa..c77b174c 100644 --- a/presentation/src/main/java/com/whyranoid/presentation/screens/running/RunningScreen.kt +++ b/presentation/src/main/java/com/whyranoid/presentation/screens/running/RunningScreen.kt @@ -15,8 +15,8 @@ import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxHeight -import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding @@ -42,15 +42,17 @@ import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableFloatStateOf import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember -import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color +import androidx.compose.ui.layout.onSizeChanged import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalDensity import androidx.compose.ui.platform.LocalLifecycleOwner import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp @@ -91,7 +93,6 @@ import com.whyranoid.presentation.viewmodel.RunningViewModel.Companion.MAP_MAX_Z import com.whyranoid.presentation.viewmodel.RunningViewModel.Companion.MAP_MIN_ZOOM import com.whyranoid.runningdata.model.RunningFinishData import com.whyranoid.runningdata.model.RunningState -import kotlinx.coroutines.CoroutineScope import org.koin.androidx.compose.koinViewModel import org.orbitmvi.orbit.compose.collectAsState @@ -665,13 +666,15 @@ fun RunningInfoScreen( style = WalkieTypography.Body2, ) Text( - text = state.runningResultInfoState.getDataOrNull()?.steps?.let { it.toString() } - ?: state.runningInfoState.getDataOrNull()?.steps?.let { it.toString() } + text = state.runningResultInfoState.getDataOrNull()?.steps?.toString() + ?: state.runningInfoState.getDataOrNull()?.steps?.toString() ?: "0", style = WalkieTypography.Title, ) } } + + } } @@ -688,7 +691,8 @@ fun RunningBottomButton( ) { Box( modifier = Modifier - .fillMaxSize() + .fillMaxHeight() + .fillMaxWidth() .padding(bottom = 20.dp), contentAlignment = Alignment.BottomCenter, ) { @@ -739,32 +743,56 @@ fun RunningBottomButton( } is RunningState.Paused -> { - Row( - Modifier - .height(44.dp) - .wrapContentWidth() - .border( - width = 1.dp, - color = WalkieColor.GrayDefault, - shape = CircleShape, - ) - .clip(CircleShape) - .background(Color.White), - ) { - IconButton(modifier = modifier, onClick = { onResumeRunning() }) { - Icon( - Icons.Default.PlayArrow, - contentDescription = "", - modifier = Modifier.size(20.dp), + var buttonsWidth by remember { mutableFloatStateOf(0f) } + + Column { + Row( + Modifier + .height(32.dp) + .width(with(LocalDensity.current) { buttonsWidth.toDp() }) + .clip(RoundedCornerShape(12.dp)) + .background(WalkieColor.GrayBlack), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.Center + ) { + Text( + text = "잠시 런닝을 중단합니다", + style = WalkieTypography.Body2.copy(color = WalkieColor.PrimarySurface) ) } - IconButton(modifier = modifier, onClick = { onFinishRunning() }) { - Icon( - Icons.Default.Stop, - contentDescription = "", - tint = WalkieColor.Primary, - modifier = Modifier.size(20.dp), - ) + + Spacer(modifier = Modifier.height(4.dp)) + + Row( + Modifier + .height(44.dp) + .wrapContentWidth() + .border( + width = 1.dp, + color = WalkieColor.GrayDefault, + shape = CircleShape, + ) + .clip(CircleShape) + .background(Color.White) + .onSizeChanged { + buttonsWidth = it.width.toFloat() + }, + ) { + IconButton(modifier = modifier, onClick = { onResumeRunning() }) { + Icon( + Icons.Default.PlayArrow, + contentDescription = "", + modifier = Modifier.size(20.dp), + ) + } + IconButton(modifier = modifier, onClick = { onFinishRunning() }) { + Icon( + Icons.Default.Stop, + contentDescription = "", + tint = WalkieColor.Primary, + modifier = Modifier.size(20.dp), + ) + } } } } diff --git a/presentation/src/main/java/com/whyranoid/presentation/theme/Color.kt b/presentation/src/main/java/com/whyranoid/presentation/theme/Color.kt index ceb15821..7a4a1a54 100644 --- a/presentation/src/main/java/com/whyranoid/presentation/theme/Color.kt +++ b/presentation/src/main/java/com/whyranoid/presentation/theme/Color.kt @@ -14,6 +14,7 @@ object WalkieColor { val GrayDefault = Color(0xFFD9D9D9) val GrayBorder = Color(0xFFB9BBB8) val GrayStatusBar = Color(0xFFB4B4B4) + val GrayBlack = Color(0xFF333333) } object SystemColor { From b10156109876272868827949c5bf13a70f3e4583 Mon Sep 17 00:00:00 2001 From: yonghanJu Date: Wed, 4 Dec 2024 22:35:37 +0900 Subject: [PATCH 3/5] =?UTF-8?q?:bookmark:=201.0.17=20=EB=B2=84=EC=A0=84=20?= =?UTF-8?q?=EC=97=85=EA=B7=B8=EB=A0=88=EC=9D=B4=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 15367bed..57256478 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -17,7 +17,7 @@ android { minSdk = 26 targetSdk = 33 versionCode = 1 - versionName = "1.0.16" + versionName = "1.0.17" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } From c6a75181911f5bf3bfbca3247f5586b0c0af456e Mon Sep 17 00:00:00 2001 From: yonghanJu Date: Wed, 4 Dec 2024 22:40:06 +0900 Subject: [PATCH 4/5] =?UTF-8?q?:sparkles:=20=EB=B2=84=ED=8A=BC=20=EA=B0=84?= =?UTF-8?q?=EA=B2=A9=20=EC=A1=B0=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/whyranoid/presentation/screens/running/RunningScreen.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/presentation/src/main/java/com/whyranoid/presentation/screens/running/RunningScreen.kt b/presentation/src/main/java/com/whyranoid/presentation/screens/running/RunningScreen.kt index c77b174c..56f30c70 100644 --- a/presentation/src/main/java/com/whyranoid/presentation/screens/running/RunningScreen.kt +++ b/presentation/src/main/java/com/whyranoid/presentation/screens/running/RunningScreen.kt @@ -761,7 +761,7 @@ fun RunningBottomButton( ) } - Spacer(modifier = Modifier.height(4.dp)) + Spacer(modifier = Modifier.height(6.dp)) Row( Modifier From efa64cbb4788d18160cd578e823f447abc974818 Mon Sep 17 00:00:00 2001 From: yonghanJu Date: Thu, 5 Dec 2024 21:50:55 +0900 Subject: [PATCH 5/5] =?UTF-8?q?:sparkles:=20=EC=BB=A4=EB=AE=A4=EB=8B=88?= =?UTF-8?q?=ED=8B=B0=20=EC=83=81=EB=8B=A8=20=EB=B3=B8=EC=9D=B8=20=EC=84=AC?= =?UTF-8?q?=EB=84=A4=EC=9D=BC=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/whyranoid/walkie/KoinModules.kt | 2 +- .../data/datasource/post/PostDataSourceImpl.kt | 2 +- .../data/repository/PostRepositoryImpl.kt | 2 +- .../presentation/screens/CommunityScreen.kt | 11 +++++++++++ .../viewmodel/CommunityScreenViewModel.kt | 14 ++++++++++++++ 5 files changed, 28 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/whyranoid/walkie/KoinModules.kt b/app/src/main/java/com/whyranoid/walkie/KoinModules.kt index 38e84201..2bdefa5f 100644 --- a/app/src/main/java/com/whyranoid/walkie/KoinModules.kt +++ b/app/src/main/java/com/whyranoid/walkie/KoinModules.kt @@ -144,7 +144,7 @@ val viewModelModule = viewModel { AddPostViewModel(get()) } viewModel { SearchFriendViewModel(get(), get(), get()) } viewModel { DialogViewModel(get(), get(), get(), get(), get(), get()) } - viewModel { CommunityScreenViewModel(get(), get(), get(), get(), get()) } + viewModel { CommunityScreenViewModel(get(), get(), get(), get(), get(), get(), get()) } viewModel { FollowingViewModel(get(), get(), get(), get(), get(), get()) } viewModel { SettingViewModel(get(), get()) } viewModel { TotalBadgeViewModel(get(), get()) } diff --git a/data/src/main/java/com/whyranoid/data/datasource/post/PostDataSourceImpl.kt b/data/src/main/java/com/whyranoid/data/datasource/post/PostDataSourceImpl.kt index 70af74b9..f52bdb67 100644 --- a/data/src/main/java/com/whyranoid/data/datasource/post/PostDataSourceImpl.kt +++ b/data/src/main/java/com/whyranoid/data/datasource/post/PostDataSourceImpl.kt @@ -109,7 +109,7 @@ class PostDataSourceImpl(private val postService: PostService) : PostDataSource override suspend fun getEveryPost(uid: Long): Result> { return kotlin.runCatching { - val posts = requireNotNull(postService.getPosts(uid).body()) + val posts = requireNotNull(postService.getEveryPosts(uid).body()) posts.map { it.toPost(uid) } } } diff --git a/data/src/main/java/com/whyranoid/data/repository/PostRepositoryImpl.kt b/data/src/main/java/com/whyranoid/data/repository/PostRepositoryImpl.kt index 213f2a64..ffe85e0b 100644 --- a/data/src/main/java/com/whyranoid/data/repository/PostRepositoryImpl.kt +++ b/data/src/main/java/com/whyranoid/data/repository/PostRepositoryImpl.kt @@ -58,7 +58,7 @@ class PostRepositoryImpl( } override suspend fun getEveryPost(uid: Long): Result> { - return postDataSource.getMyFollowingsPost(uid) + return postDataSource.getEveryPost(uid) } override suspend fun getComments(postId: Long): Result> { diff --git a/presentation/src/main/java/com/whyranoid/presentation/screens/CommunityScreen.kt b/presentation/src/main/java/com/whyranoid/presentation/screens/CommunityScreen.kt index 41f8311c..06d6ee4c 100644 --- a/presentation/src/main/java/com/whyranoid/presentation/screens/CommunityScreen.kt +++ b/presentation/src/main/java/com/whyranoid/presentation/screens/CommunityScreen.kt @@ -36,6 +36,7 @@ import androidx.compose.ui.unit.sp import androidx.navigation.NavController import com.whyranoid.presentation.component.bar.WalkieTopBar import com.whyranoid.presentation.component.community.PostItem +import com.whyranoid.presentation.component.community.RunningFollowerItem import com.whyranoid.presentation.component.running.RunningFollowerItemWithLikable import com.whyranoid.presentation.theme.WalkieColor import com.whyranoid.presentation.theme.WalkieTypography @@ -119,6 +120,16 @@ fun CommunityScreen(navController: NavController) { modifier = Modifier.padding(it) ) { LazyRow { + state.myThumbnailState.getDataOrNull()?.let { myInfo -> + item { + RunningFollowerItem( + user = myInfo, + onClickProfile = { + navController.navigate(Screen.MyPage.route) + }, + ) + } + } state.runningFollowerState.getDataOrNull()?.let { (running, notRunning) -> items(running.size) { RunningFollowerItemWithLikable( diff --git a/presentation/src/main/java/com/whyranoid/presentation/viewmodel/CommunityScreenViewModel.kt b/presentation/src/main/java/com/whyranoid/presentation/viewmodel/CommunityScreenViewModel.kt index daf2a353..0da34af4 100644 --- a/presentation/src/main/java/com/whyranoid/presentation/viewmodel/CommunityScreenViewModel.kt +++ b/presentation/src/main/java/com/whyranoid/presentation/viewmodel/CommunityScreenViewModel.kt @@ -6,6 +6,8 @@ import com.whyranoid.domain.model.post.Post import com.whyranoid.domain.model.user.User import com.whyranoid.domain.usecase.GetFollowingsPostsUseCase import com.whyranoid.domain.usecase.GetMyFollowingUseCase +import com.whyranoid.domain.usecase.GetMyUidUseCase +import com.whyranoid.domain.usecase.GetUserUseCase import com.whyranoid.domain.usecase.LikePostUseCase import com.whyranoid.domain.usecase.running.GetRunningFollowerUseCase import com.whyranoid.domain.usecase.running.SendLikeUseCase @@ -25,6 +27,7 @@ data class CommunityScreenState( val following: UiState> = UiState.Idle, val isEveryPost: UiState = UiState.Success(true), val runningFollowerState: UiState, List>> = UiState.Idle, + val myThumbnailState: UiState = UiState.Idle, ) class CommunityScreenViewModel( @@ -33,6 +36,8 @@ class CommunityScreenViewModel( private val likePostUseCase: LikePostUseCase, private val sendLikeUseCase: SendLikeUseCase, private val getRunningFollowerUseCase: GetRunningFollowerUseCase, + private val getMyUidUseCase: GetMyUidUseCase, + private val getUserUseCase: GetUserUseCase, ) : ViewModel(), ContainerHost { override val container = @@ -49,6 +54,15 @@ class CommunityScreenViewModel( } } } + intent { + val myUid = getMyUidUseCase().getOrThrow() + val user = getUserUseCase(myUid).getOrThrow() + reduce { + state.copy( + myThumbnailState = UiState.Success(user) + ) + } + } getPosts() }