{"id":538525,"date":"2025-01-17T05:49:36","date_gmt":"2025-01-17T04:49:36","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=kotlin&#038;p=538525"},"modified":"2025-01-17T05:49:43","modified_gmt":"2025-01-17T04:49:43","slug":"compose-multiplatform-1-7-0-released","status":"publish","type":"kotlin","link":"https:\/\/blog.jetbrains.com\/ko\/kotlin\/2025\/01\/compose-multiplatform-1-7-0-released\/","title":{"rendered":"Compose Multiplatform 1.7.0 \ucd9c\uc2dc"},"content":{"rendered":"<p>Compose Multiplatform\uc740 \uac1c\ubc1c\uc790\uac00 \ub2e4\uc591\ud55c \ud50c\ub7ab\ud3fc\uc5d0\uc11c UI \uad6c\ud604\uc744 \uacf5\uc720\ud560 \uc218 \uc788\ub3c4\ub85d JetBrains\uc5d0\uc11c \uc124\uacc4\ud55c \uc120\uc5b8\uc801 UI \ud504\ub808\uc784\uc6cc\ud06c\uc785\ub2c8\ub2e4. 1.7.0 \ub9b4\ub9ac\uc2a4\ub294 \uacf5\ud1b5 \ucf54\ub4dc\uc758 \uad6c\uc131 \uc694\uc18c \ucd94\uac00, \ud0c0\uc785\uc5d0 \uc548\uc804\ud55c \ud0d0\uc0c9 \uc9c0\uc6d0, iOS\uc5d0\uc11c\uc758 \ud070 \uc131\ub2a5 \uac1c\uc120\uc744 \uc81c\uacf5\ud558\uace0 \ucd5c\uc2e0 <a href=\"https:\/\/developer.android.com\/jetpack\/compose\" target=\"_blank\" rel=\"noopener\" data-type=\"link\" data-id=\"https:\/\/developer.android.com\/jetpack\/compose\">Jetpack Compose<\/a> \uc5c5\ub370\uc774\ud2b8\uc758 \ubcc0\uacbd \uc0ac\ud56d\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774\ubc88 \ub9b4\ub9ac\uc2a4\uc758 \uc8fc\uc694 \ud2b9\uc9d5\uc740 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n<ul>\n<li>\uc774\uc81c Material3\uc758 <code>adaptive<\/code>\uc640 <code>WindowSizeClass<\/code>\uac00 \uacf5\ud1b5 \ucf54\ub4dc\uc5d0\uc11c \uc81c\uacf5\ub429\ub2c8\ub2e4.<\/li>\n<li>Compose Multiplatform\uc774 \ud0d0\uc0c9 \uadf8\ub798\ud504\uc5d0 \uc774\uc81c \ucef4\ud30c\uc77c\ud0c0\uc784 \uc548\uc804\uc131\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4.<\/li>\n<li>Compose Multiplatform 1.7.0\uc740 Kotlin 2.0.20\uacfc \ud568\uaed8 \uc0ac\uc6a9 \uc2dc \uae30\uc874\uc758 \uc548\uc815\ud654 \ub9b4\ub9ac\uc2a4\ubcf4\ub2e4 iOS\uc5d0\uc11c \ud6e8\uc52c \ub354 \ube60\ub974\uace0 \ubd80\ub4dc\ub7fd\uac8c \uc791\ub3d9\ud569\ub2c8\ub2e4.<\/li>\n<\/ul>\n<p>\uc804\uccb4 \ubcc0\uacbd \ubaa9\ub85d\uc740 <a href=\"https:\/\/www.jetbrains.com\/help\/kotlin-multiplatform-dev\/whats-new-compose-170.html\" target=\"_blank\" rel=\"noreferrer noopener\">\uc0c8\ub85c\uc6b4 \uae30\ub2a5<\/a> \ub610\ub294 <a href=\"https:\/\/github.com\/JetBrains\/compose-multiplatform\/releases\/tag\/v1.7.0\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub\uc758 \ub9b4\ub9ac\uc2a4 \ub178\ud2b8<\/a>\ub97c \ucc38\uc870\ud558\uc138\uc694.<\/p>\n<p align=\"center\"><a class=\"ek-link jb-download-button\" title=\"Compose Multiplatform \uc2dc\uc791\ud558\uae30\" href=\"https:\/\/www.jetbrains.com\/help\/kotlin-multiplatform-dev\/compose-multiplatform-getting-started.html?utm_source=kotlinblog&amp;utm_medium=cta&amp;utm_campaign=compose-1.7.0\" target=\"_blank\" rel=\"noopener\">Compose Multiplatform \uc2dc\uc791\ud558\uae30<\/a><\/p>\n<h2 class=\"wp-block-heading\">\uc0c8\ub85c\uc6b4 \uacf5\ud1b5 \ubaa8\ub4c8<\/h2>\n<p>Compose Multiplatform 1.7.0\uc740 \ub2e4\uc74c \uad6c\uc131 \uc694\uc18c\ub97c \uacf5\ud1b5 \ucf54\ub4dc\uc5d0\uc11c \uc81c\uacf5\ud569\ub2c8\ub2e4.<\/p>\n<ul>\n<li><code>adaptive<\/code>, <code>adaptive-layout<\/code>, <code>adaptive-navigation<\/code>\uacfc \uac19\uc740 <code>material3.adaptive<\/code>\uc758 Material3 \uc801\uc751\ud615 \ubaa8\ub4c8<\/li>\n<li>Material3 \uc801\uc751\ud615 \ud0d0\uc0c9 \uc2a4\uc704\ud2b8<\/li>\n<li>Material3 <code>WindowSizeClass<\/code> \ud074\ub798\uc2a4<\/li>\n<li><code>material-navigation<\/code> \ub77c\uc774\ube0c\ub7ec\ub9ac<\/li>\n<\/ul>\n<h2 class=\"wp-block-heading\">\ud0c0\uc785\uc5d0 \uc548\uc804\ud55c \ud0d0\uc0c9<\/h2>\n<p>\uc774\uc81c Compose Multiplatform\uc5d0\uc11c \ud0d0\uc0c9 \uadf8\ub798\ud504\uc758 \ucef4\ud30c\uc77c\ud0c0\uc784 \uc548\uc804\uc131\uc774 \ud655\ubcf4\ub429\ub2c8\ub2e4. \ud0c0\uc785 \uc548\uc815\uc131\uc744 \ubcf4\uc7a5\ud558\uae30 \uc704\ud574, Jetpack Compose\uc758 \ud0c0\uc785\uc5d0 \uc548\uc804\ud55c \ubc29\uc2dd\uc744 \ud0d0\uc0c9 \uacbd\ub85c\ub97c \ub530\ub77c \uac1d\uccb4\ub97c \uc804\ub2ec\ud558\ub294 \ub370 \uc801\uc6a9\ud558\uc600\uc2b5\ub2c8\ub2e4.<\/p>\n<p>API\uc5d0 \uad00\ud55c \uc790\uc138\ud55c \ub0b4\uc6a9\uc740 <a href=\"https:\/\/developer.android.com\/guide\/navigation\/design\/type-safety\" target=\"_blank\" rel=\"noreferrer noopener\">Navigation Compose\uc758 \ud0c0\uc785 \uc548\uc815\uc131<\/a> \uac00\uc774\ub4dc\ub97c \ucc38\uc870\ud574 \uc8fc\uc138\uc694.<\/p>\n<h2 class=\"wp-block-heading\">iOS\uc0c1\uc5d0\uc11c\uc758 \uc131\ub2a5 \uac1c\uc120<\/h2>\n<p>Compose \uc571\uc774 iOS\uc5d0\uc11c \ud6e8\uc52c \ub354 \ube60\ub974\uace0 \ubd80\ub4dc\ub7fd\uac8c \uc2e4\ud589\ub418\ub3c4\ub85d, Kotlin\/Native \ud300\uc774 Kotlin 2.0.20\uc73c\ub85c \ub9ce\uc740 \ub3c4\uc6c0\uc744 \uc8fc\uc5c8\uc2b5\ub2c8\ub2e4. Compose Multiplatform 1.7.0 \ub9b4\ub9ac\uc2a4\ub294 \uc774\ub7ec\ud55c \ucd5c\uc801\ud654\uc640 \ub354\ubd88\uc5b4 Jetpack Compose 1.7.0\uc758 \uc131\ub2a5 \uac1c\uc120 \uc0ac\ud56d\ub3c4 \ucd5c\ub300\ud55c \ud65c\uc6a9\ud569\ub2c8\ub2e4.<\/p>\n<p>Kotlin 2.0.0\uacfc Compose Multiplatform 1.6.11\ub97c \ud568\uaed8 \uc0ac\uc6a9\ud558\uace0, Compose Multiplatform 1.7.0\uacfc Kotlin 2.0.20\uc744 \ud568\uaed8 \uc0ac\uc6a9\ud558\uc5ec \ubca4\uce58\ub9c8\ud06c\ub97c \uc218\ud589\ud558\uace0 \ube44\uad50\ud55c \uacb0\uacfc \ub2e4\uc74c\uacfc \uac19\uc774 \uac1c\uc120\ub418\uc5c8\uc2b5\ub2c8\ub2e4.<\/p>\n<ul>\n<li>LazyGrid \ubca4\uce58\ub9c8\ud06c\ub294 \uc2e4\uc81c \uc0ac\uc6a9 \uc0ac\ub840\uc640 \uac00\uc7a5 \uc720\uc0ac\ud55c <code>LazyVerticalGrid<\/code> \uc2a4\ud06c\ub864\ub9c1\uc744 \uc2dc\ubbac\ub808\uc774\uc158\ud558\uba70, \ud3c9\uade0 9% \ube60\ub974\uac8c \uc791\ub3d9\ud569\ub2c8\ub2e4. \ub610\ud55c, \ub204\ub77d\ub41c \ud504\ub808\uc784\uc758 \uc218\uac00 \ud06c\uac8c \uac10\uc18c\ub41c \uac83\uc774 \ud655\uc778\ub429\ub2c8\ub2e4. \uc544\ub798\uc758 p1\/p50 \ubc31\ubd84\uc704 \uadf8\ub798\ud504\ub97c \ubcf4\uba74, 120Hz iPhone \ud654\uba74\uc758 \ud45c\uc900 \uc9c0\uc5f0 \uc2dc\uac04\uc778 8.33\ubc00\ub9ac\ucd08\ubcf4\ub2e4 \ud3c9\uade0 \ucc98\ub9ac \uc2dc\uac04\uc774 \ub2e8\ucd95\ub428\uc5d0 \ub530\ub77c \ud504\ub808\uc784 \uc548\uc815\uc131\uc774 \uc99d\uac00\ud558\uace0 \ub204\ub77d\ub41c \ud504\ub808\uc784\uc774 \uac70\uc758 \uc5c6\ub294 \uac83\uc744 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<li>VisualEffects \ubca4\uce58\ub9c8\ud06c\ub294 \ubb34\uc791\uc704\ub85c \ubc30\uce58\ub41c \uc218\ub9ce\uc740 \uad6c\uc131 \uc694\uc18c\ub97c \ub80c\ub354\ub9c1\ud558\uba70, 3.6\ubc30 \ube60\ub974\uac8c \uc791\ub3d9\ud569\ub2c8\ub2e4. 1000\ud504\ub808\uc784\ub2f9 \ud3c9\uade0 CPU \uc2dc\uac04\uc740 8.8\ucd08\uc5d0\uc11c 2.4\ucd08\ub85c \uc904\uc5c8\uc2b5\ub2c8\ub2e4.<\/li>\n<li><code>AnimatedVisibility<\/code> \ucef4\ud3ec\uc800\ube14\uc740 \uc774\ubbf8\uc9c0\ub97c \ud45c\uc2dc\ud558\uace0 \uc228\uae30\ub294 \ub3d9\uc791\uc744 \uc560\ub2c8\uba54\uc774\uc158 \ucc98\ub9ac\ud558\uba70, \uc5ec\uae30\uc5d0\uc11c \ub80c\ub354\ub9c1 \uc18d\ub3c4\uac00 6%\uae4c\uc9c0 \ube68\ub77c\uc9c4 \uac83\uc774 \ud655\uc778\ub429\ub2c8\ub2e4.<\/li>\n<\/ul>\n<figure class=\"wp-block-table is-style-stripes\">\n<table>\n<tbody>\n<tr>\n<td><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-517457\" style=\"width: 350px;\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2024\/10\/LazyVerticalGrid_1.7.0.png\" alt=\"LazyVerticalGrid \uc2a4\ud06c\ub864\ub9c1\" width=\"908\" height=\"620\" \/><\/td>\n<td><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-517468\" style=\"width: 350px;\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2024\/10\/VisualEffects_1.7.0.png\" alt=\"VisualEffects 1000\uac1c \ud504\ub808\uc784 \ub80c\ub354\ub9c1\" width=\"908\" height=\"621\" \/><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n<p>\uc790\uc720\ub86d\uac8c \uc9c1\uc811 \ud14c\uc2a4\ud2b8\ud574 \ubcf4\uace0 \uc5ec\ub7ec\ubd84\uc758 iOS \uc571\uc774 \ub354 \ubd80\ub4dc\ub7fd\uac8c \uc791\ub3d9\ud558\ub294\uc9c0 \uc54c\ub824\uc8fc\uc138\uc694!<\/p>\n<p>\uc774\ubfd0\ub9cc \uc544\ub2c8\ub77c Kotlin 2.0.20\uc740 \uac00\ube44\uc9c0 \uceec\ub809\ud130(GC)\uc758 \ub3d9\uc2dc \ub9c8\ud0b9\ub3c4 \uc2e4\ud5d8\uc801\uc73c\ub85c \uc9c0\uc6d0\ud569\ub2c8\ub2e4. \ub3d9\uc2dc \ub9c8\ud0b9\uc744 \ud65c\uc131\ud654\ud558\uba74 GC \uc911\uc9c0 \uc2dc\uac04\uc774 \uc904\uc5b4\ub4e4\uace0 \ubaa8\ub4e0 \ubca4\uce58\ub9c8\ud06c\uc5d0\uc11c \ub354\uc6b1 \uc131\ub2a5\uc774 \ud5a5\uc0c1\ub429\ub2c8\ub2e4. LazyGrid \ubca4\uce58\ub9c8\ud06c\uc5d0\uc11c\ub294 \ub204\ub77d\ub418\ub294 \ud504\ub808\uc784\uc774 \uc774\uc804\uc758 \uc808\ubc18\ubc16\uc5d0 \ub418\uc9c0 \uc54a\uc558\uc73c\uba70, \uac00\uc7a5 \uc2ec\ud55c p25 GC\uc758 \uc911\uc9c0 \uc2dc\uac04\uc740 1.7\ubc00\ub9ac\ucd08\uc5d0\uc11c 0.4\ubc00\ub9ac\ucd08\ub85c \uac10\uc18c\ud588\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/kotlinlang.org\/docs\/whatsnew2020.html#concurrent-marking-in-garbage-collector\" target=\"_blank\" rel=\"noreferrer noopener\">\uc0ac\uc6a9\ud574 \ubcf4\uace0<\/a> \ud53c\ub4dc\ubc31\uc744 \uacf5\uc720\ud574 \uc8fc\uc138\uc694.<\/p>\n<p align=\"center\"><a class=\"ek-link jb-download-button\" title=\"Compose Multiplatform 1.7.0\uc73c\ub85c \uc5c5\ub370\uc774\ud2b8\ud558\uae30\" href=\"https:\/\/github.com\/JetBrains\/compose-multiplatform\/releases\/tag\/v1.7.0\" target=\"_blank\" rel=\"noopener\">Compose Multiplatform 1.7.0\uc73c\ub85c \uc5c5\ub370\uc774\ud2b8\ud558\uae30<\/a><\/p>\n<h2 class=\"wp-block-heading\">Compose Multiplatform\uacfc \ub124\uc774\ud2f0\ube0c iOS \uac04\uc758 \ud130\uce58 \uc0c1\ud638 \uc6b4\uc6a9\uc131 \uac1c\uc120<\/h2>\n<p>\uc774 \ub9b4\ub9ac\uc2a4\uc5d0\uc11c\ub294 iOS \uc0c1\ud638 \uc6b4\uc6a9\uc131 \ubdf0\uc758 \ud130\uce58 \ucc98\ub9ac\uac00 \uac1c\uc120\ub429\ub2c8\ub2e4. \ucee4\ub2e4\ub780 \uc0c1\ud638 \uc6b4\uc6a9\uc131 \ub3d9\uc601\uc0c1 \ud50c\ub808\uc774\uc5b4\uac00 \uc9c0\uc5f0 \ubaa9\ub85d(lazy list)\ucc98\ub7fc \uc2a4\ud06c\ub864 \uac00\ub2a5\ud55c \ucee8\ud14d\uc2a4\ud2b8\uc5d0\uc11c \uc0ac\uc6a9\ub418\ub294 \uc0c1\ud669\uc744 \uc0dd\uac01\ud574 \ubcf4\uc138\uc694. \ud654\uba74 \ub300\ubd80\ubd84\uc744 \uc601\uc0c1\uc774 \ucc28\uc9c0\ud574\uc11c \ubaa8\ub4e0 \ud130\uce58\ub97c \uac00\ub85c\ub9c9\uace0 \uc788\ub294\ub370 Compose Multiplatform\uc774 \uc774\ub97c \uc778\uc2dd\ud558\uc9c0 \ubabb\ud55c\ub2e4\uba74 \ubaa9\ub85d\uc744 \uc2a4\ud06c\ub864\ud558\uae30\uac00 \ub9e4\uc6b0 \ubd88\ud3b8\ud560 \uac83\uc785\ub2c8\ub2e4.<\/p>\n<p>\uc774\uc81c Compose Multiplatform\uc740 \ud130\uce58\uac00 \uc0c1\ud638 \uc6b4\uc6a9\uc131 \ubdf0\uc5d0 \ud544\uc694\ud55c \uac83\uc778\uc9c0 \uc544\ub2c8\uba74 Compose\ub85c \ucc98\ub9ac\ud574\uc57c \ud560\uc9c0 \ud0d0\uc9c0\ud569\ub2c8\ub2e4. \uc774\ub97c \ud1b5\ud574 Compose Multiplatform \uc571 \ub0b4\uc758 UIKit \ub610\ub294 SwiftUI \uc601\uc5ed\uc5d0\uc11c \ubc1c\uc0dd\ud55c \ud130\uce58 \uc774\ubca4\ud2b8\ub97c \ucc98\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc790\uc138\ud55c \ub0b4\uc6a9\uc740 <a href=\"https:\/\/www.jetbrains.com\/help\/kotlin-multiplatform-dev\/compose-ios-touch.html\" target=\"_blank\" rel=\"noreferrer noopener\">iOS\uc5d0\uc11c \uc0c1\ud638 \uc6b4\uc6a9\uc131\uacfc \ud568\uaed8 \ud130\uce58 \uc774\ubca4\ud2b8 \ucc98\ub9ac<\/a> \ubb38\uc11c \ud398\uc774\uc9c0\ub97c \ucc38\uc870\ud558\uc138\uc694.<\/p>\n<h2 class=\"wp-block-heading\">\ub370\uc2a4\ud06c\ud1b1\uc5d0\uc11c \ub4dc\ub798\uadf8\uc564\ub4dc\ub86d \uad6c\ud604<\/h2>\n<p>Compose Multiplatform 1.7.0\uc740 \ub370\uc2a4\ud06c\ud1b1\uc5d0\uc11c \ub4dc\ub798\uadf8\uc564\ub4dc\ub86d\uc744 \uad6c\ud604\ud569\ub2c8\ub2e4. \uc774\uc81c <code>dragAndDropSource<\/code>\uc640 <code>dragAndDropTarget<\/code> \uc81c\uc5b4\uc790\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc5b4\ub5a4 composable\uc774 \ub4dc\ub798\uadf8 \uc9c0\uc810\uc744 \uc2dc\uc791\ud558\uace0 \ub4dc\ub86d\ub41c \ub370\uc774\ud130\ub97c \ubc1b\uc744\uc9c0 \uc9c0\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-516189\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2024\/10\/drag_and_drop.png\" alt=\"\ub370\uc2a4\ud06c\ud1b1\uc5d0\uc11c \ub4dc\ub798\uadf8\uc564\ub4dc\ub86d \uad6c\ud604\" width=\"600\" data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2024\/10\/drag_and_drop.gif\" \/><\/figure>\n<h2 class=\"wp-block-heading\">\uacf5\uc720 \uc694\uc18c \uc804\ud658<\/h2>\n<p>\uc774\uc81c Compose Multiplatform\uc5d0\uc11c \uc77c\uad00\ub41c \uc694\uc18c\ub97c \uacf5\uc720\ud558\ub294 \ucef4\ud3ec\uc800\ube14 \uac04\uc5d0 \ubd80\ub4dc\ub7fd\uac8c \uc804\ud658\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uc804\ud658\uc740 UI\uc758 \ubcc0\uacbd\ub418\ub294 \ud750\ub984\uc744 \uc0ac\uc6a9\uc790\uac00 \uc798 \ub530\ub77c\uac08 \uc218 \uc788\ub3c4\ub85d \ub3c4\uc640\uc8fc\uae30 \ub54c\ubb38\uc5d0 \ud0d0\uc0c9\ud560 \ub54c \uc720\uc6a9\ud569\ub2c8\ub2e4. API \ubc0f Android \uc0d8\ud50c\uc5d0 \uad00\ud55c \uc790\uc138\ud55c \ub0b4\uc6a9\uc740 <a href=\"https:\/\/developer.android.com\/develop\/ui\/compose\/animation\/shared-elements\" target=\"_blank\" rel=\"noreferrer noopener\">Jetpack Compose \ubb38\uc11c<\/a>\ub97c \ucc38\uc870\ud558\uace0, \ub2e4\ub978 \ud50c\ub7ab\ud3fc\uc5d0\uc11c\ub3c4 \uc0c8\ub85c\uc6b4 \uc560\ub2c8\uba54\uc774\uc158\uc744 \uc0ac\uc6a9\ud574 \ubcf4\uc138\uc694.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" class=\"wp-image-516222\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2024\/10\/ios_shared_element_transitions.png\" alt=\"\uacf5\uc720 \uc694\uc18c \uc804\ud658\" width=\"335\" data-gif-src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2024\/10\/ios_shared_element_transitions.gif\" \/><\/figure>\n<h2 class=\"wp-block-heading\">\ub9ac\uc18c\uc2a4 \uc5c5\ub370\uc774\ud2b8 \ubc0f \uac1c\uc120<\/h2>\n<p>\uc774\ubc88 \ub9b4\ub9ac\uc2a4\uc5d0\ub294 \ub2e4\uc591\ud55c \ub9ac\uc18c\uc2a4 \uc5c5\ub370\uc774\ud2b8\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \uadf8 \uc911\uc5d0\uc11c \uac00\uc7a5 \ub208\uc5d0 \ub744\ub294 \uc5c5\ub370\uc774\ud2b8\ub97c \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<ul>\n<li>\ub9ac\uc18c\uc2a4 \ub77c\uc774\ube0c\ub7ec\ub9ac\uac00 \uc774\uc81c Compose Multiplatform \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c \ud14c\uc2a4\ud2b8 \ub9ac\uc18c\uc2a4\ub97c \uc9c0\uc6d0\ud569\ub2c8\ub2e4.<\/li>\n<li>\ubaa8\ub4e0 \uba40\ud2f0\ud50c\ub7ab\ud3fc \ub9ac\uc18c\uc2a4\uac00 \uc774\uc81c Android \uc560\uc14b\uc5d0 \ud3ec\ud568\ub418\uc5b4 Android Studio\uac00 Android \uc18c\uc2a4 \uc138\ud2b8 \ub0b4 Compose Multiplatform \ucef4\ud3ec\uc800\ube14\uc758 \ubbf8\ub9ac\ubcf4\uae30\ub97c \uc0dd\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<li>WebView\ub098 \ubbf8\ub514\uc5b4 \ud50c\ub808\uc774\uc5b4 \uac19\uc740 \uc678\ubd80 \ub77c\uc774\ube0c\ub7ec\ub9ac\uc758 URI\ub97c \ud1b5\ud574 Android \ub9ac\uc18c\uc2a4\uc5d0 \uc9c1\uc811 \uc561\uc138\uc2a4\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<li>\uad6c\uc131 DSL\uc758 \uc0c8\ub85c\uc6b4 <code>customDirectory<\/code> \uc124\uc815\uc744 \uc0ac\uc6a9\ud558\uc5ec \uc0ac\uc6a9\uc790 \uc9c0\uc815 \ub514\ub809\ud130\ub9ac\uc640 \ud2b9\uc815 \uc18c\uc2a4 \uc138\ud2b8\ub97c \uc5f0\uacb0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<li>\ub9ac\uc18c\uc2a4\uac00 \ubb38\uc790\uc5f4 ID\uc640 \ub9e4\ud551\ub418\uc5b4 \uc561\uc138\uc2a4\uac00 \ud3b8\ub9ac\ud574\uc84c\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n<h2 class=\"wp-block-heading\">\ub2e4\ub978 \uc720\uc6a9\ud55c \uae00<\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/JetBrains\/compose-multiplatform\/releases\/tag\/v1.7.0?utm_source=kotlinblog&amp;utm_medium=blogpost&amp;utm_campaign=compose-1-7-0\" target=\"_blank\" rel=\"noreferrer noopener\">Compose Multiplatform 1.7.0 \u2013 GitHub \ub9b4\ub9ac\uc2a4 \ub178\ud2b8<\/a><\/li>\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/kotlin-multiplatform-dev\/whats-new-compose-170.html\" target=\"_blank\" rel=\"noreferrer noopener\">Compose Multiplatform 1.7.0\uc758 \uc0c8\ub85c\uc6b4 \uae30\ub2a5 \u2013 \ubb38\uc11c \ud3ec\ud138\uc5d0 \uc788\ub294 \uc0c1\uc138\ud55c \ub9b4\ub9ac\uc2a4 \ub178\ud2b8<\/a><\/li>\n<li><a href=\"https:\/\/www.jetbrains.com\/help\/kotlin-multiplatform-dev\/compose-multiplatform-getting-started.html\" target=\"_blank\" rel=\"noreferrer noopener\">Compose Multiplatform \uc2dc\uc791\ud558\uae30<\/a><a href=\"https:\/\/github.com\/JetBrains\/compose-multiplatform\/releases\/tag\/v1.7.0?utm_source=kotlinblog&amp;utm_medium=blogpost&amp;utm_campaign=compose-1-7-0\" target=\"_blank\" rel=\"noopener\">\u2013<\/a><a href=\"https:\/\/www.jetbrains.com\/help\/kotlin-multiplatform-dev\/compose-multiplatform-getting-started.html\" target=\"_blank\" rel=\"noopener\"> \ud29c\ud1a0\ub9ac\uc5bc<\/a><\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2024\/08\/kotlin-2-0-20-released\/\" target=\"_blank\" rel=\"noreferrer noopener\">Kotlin 2.0.20 \ub9b4\ub9ac\uc2a4<\/a><a href=\"https:\/\/github.com\/JetBrains\/compose-multiplatform\/releases\/tag\/v1.7.0?utm_source=kotlinblog&amp;utm_medium=blogpost&amp;utm_campaign=compose-1-7-0\" target=\"_blank\" rel=\"noopener\">\u2013<\/a><a href=\"https:\/\/blog.jetbrains.com\/kotlin\/2024\/08\/kotlin-2-0-20-released\/\"> \ube14\ub85c\uadf8 \uac8c\uc2dc\uae00<\/a><\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<p><em>\uac8c\uc2dc\ubb3c \uc6d0\ubb38 \uc791\uc131\uc790<\/em><\/p>\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/10\/Elvira_Mustafina-200x200.jpg\" width=\"200\" height=\"200\" alt=\"Elvira Mustafina\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                            <h4>Elvira Mustafina<\/h4>\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":964,"featured_media":518195,"comment_status":"closed","ping_status":"closed","template":"","categories":[956],"tags":[8144,6706,6436],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/kotlin\/538525"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/kotlin"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/types\/kotlin"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/users\/964"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/comments?post=538525"}],"version-history":[{"count":6,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/kotlin\/538525\/revisions"}],"predecessor-version":[{"id":538532,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/kotlin\/538525\/revisions\/538532"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media\/518195"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/media?parent=538525"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/categories?post=538525"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/tags?post=538525"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/ko\/wp-json\/wp\/v2\/cross-post-tag?post=538525"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}