기본 콘텐츠로 건너뛰기

안드로이드 앱 만들기 : jetpack compose 1.5 가 안정화 되었습니다. (인터넷 펌)


원본출처: 티스토리 바로가기

https://developer.android.com/jetpack/compose/bom/bom-mapping?hl=en 

 

BOM과 라이브러리 버전 매핑  |  Jetpack Compose  |  Android Developers

BOM과 라이브러리 버전 매핑 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 라이브러리 그룹 2022.10.00의 버전 2022.11.00의 버전 2022.12.00의 버전 2023.01.00의 버전

developer.android.com

이글은 인터넷에서 퍼온 글임을 밝혀 둡니다.

 

개발자 문서를 한글 버전으로 보면 아직 번역이 되지 않았는지 이 정보와는 다르게 이전 버전에 대한 이야기만 나옵니다. 그래서 영어 버전으로 페이지를 열어서 구글 번역기를 돌려 보았습니다.  역시 최신 버전에 대한 이야기가 나옵니다. 

 

이제 조금은 더 다양한 디자인으로 다양하게 앱을 만들어 볼 수 있을 듯합니다. 

 

이번 릴리스에서는 수정자 성능이 크게 향상되어 구성 시간이 최대 80% 향상되었습니다 .
우리는 다양한 Compose API에서 발생하는 할당을 면밀히 조사하고 여러 영역, 특히 그래픽 스택 및 벡터 리소스 로딩에서 총할당을 줄였습니다. 이는 Compose의 메모리 공간을 줄일 뿐만 아니라 메모리 할당에 소요되는 시간을 줄이고 가비지 수집을 줄임으로써 성능을 직접적으로 향상합니다.
BasicText수정자 작업을 지원하는 새로운 렌더링 시스템으로 전환하여 초기 구성 시간에 평균 22%의 이득을 가져왔고 텍스트가 포함된 복잡한 레이아웃의 한 벤치마크에서는 최대 70%의 이득을 가져왔습니다.

 

구글이 말하는 개선사항에서 발췌했습니다.  성능이 개선됩니다. 앱이 조금은 더 빠르게 동작을 한다는 이야기가 될 듯합니다. 

 

다른 링크에서 얻은 정보도 정리를 해 보았습니다. 

멀티플랫폼 1.5.0-beta01
Compose의 Kotlin 다중 플랫폼 측면에서도 많은 일이 일어나고 있습니다! 1.5.0-beta01에는 위에서 언급한 성능 향상 기능이 포함되어 있으며 다른 플랫폼에 대한 향상된 기능도 추가되었습니다. 아래에 몇 가지 주요 내용을 나열했지만 그 안에는 더 많은 내용이 있습니다.
🍎 iOS용 Compose 하이라이트
기본 스크롤 및 느낌(일반적인 iOS 고무밴드 느낌) 단순화된 다중 플랫폼 리소스 관리 San Francisco가 이제 기본 글꼴입니다. TextField수정 및 개선 사항이 WindowInsets추가되었습니다. 120hz 화면 지원(기존 60hz) 수정됨: 더 이상 설정할 필요가 없습니다 isStatic = true (iOS에서 Compose를 처음 접하는 많은 개발자가 겪는 문제).
🖥️ 데스크톱용 Compose 하이라이트
Segoe UI는 이제 Windows의 기본 글꼴입니다. Swing 상호 운용성 개선
🌐 웹용 Compose 하이라이트
Scrollbar이제 일반적으로 사용 가능합니다(데스크톱에만 사용 가능) 사용자 정의 캔버스 ID를 설정할 수 있습니다. CanvasBasedWindow
다시 한번 말씀드리지만, 제가 가장 흥미로웠던 몇 가지 하이라이트는 다음과 같습니다. 특히 iOS 업데이트를 통해 Compose Multiplatform이 기본 환경에 훨씬 더 가까워졌습니다. 각 릴리스에는 더 많은 내용이 있으므로 릴리스 노트(아래 링크)를 읽어 보시기 바랍니다.

 

결론
Compose 1.5는 Android, iOS, 데스크톱 및 웹의 전반적인 환경을 크게 향상합니다. 멀티플랫폼 Compose를 사용하여 더 많은 앱이 구축됨에 따라 품질이 지속적으로 향상되는 것을 보니 반갑습니다. 가장 좋은 점은 종속성을 업데이트하기만 하면 이러한 개선 사항을 거의 무료로 얻을 수 있다는 것입니다.

이 글은 다음 링크에서 참조하였습니다.

https://medium.com/@jacobras/compose-1-5-is-out-heres-why-it-s-the-most-exciting-release-so- far-665fbd51ea5c

 

Compose 1.5 is out — here’s why it’s the most exciting release so far!

Google released Jetpack Compose 1.5 stable! It’s included in the 2023.08.00 BOM (Bill of Materials), which is available since yesterday…

medium.com

 

 

나날이 발전하는(?) 구글을 보면서 오늘도 하나를 배워 봅니다.

구글의 페이지 이미지 (인터넷 펌)

 

쿠팡링크 쿠팡와우 로켓프래쉬 로켓패션
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

댓글

이 블로그의 인기 게시물

개인정보처리방침 안내

 billcoreaTech('https://billcoreatech.blogspot.com/'이하 'https://billcoreatech.blogspot')은(는) 「개인정보 보호법」 제30조에 따라 정보주체의 개인정보를 보호하고 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다. ○ 이 개인정보처리방침은 2021년 8월 26부터 적용됩니다. 제1조(개인정보의 처리 목적) billcoreaTech('https://billcoreatech.blogspot.com/'이하 'https://billcoreatech.blogspot')은(는) 다음의 목적을 위하여 개인정보를 처리합니다. 처리하고 있는 개인정보는 다음의 목적 이외의 용도로는 이용되지 않으며 이용 목적이 변경되는 경우에는 「개인정보 보호법」 제18조에 따라 별도의 동의를 받는 등 필요한 조치를 이행할 예정입니다. 1. 서비스 제공 맞춤서비스 제공을 목적으로 개인정보를 처리합니다. 제2조(개인정보의 처리 및 보유 기간) ① billcoreaTech은(는) 법령에 따른 개인정보 보유·이용기간 또는 정보주체로부터 개인정보를 수집 시에 동의받은 개인정보 보유·이용기간 내에서 개인정보를 처리·보유합니다. ② 각각의 개인정보 처리 및 보유 기간은 다음과 같습니다. 1.<서비스 제공> <서비스 제공>와 관련한 개인정보는 수집.이용에 관한 동의일로부터<사용자의 설정시간>까지 위 이용목적을 위하여 보유.이용됩니다. 보유근거 : 앱의 기본기능 활용에 필요한 위치정보 제3조(개인정보의 제3자 제공) ① billcoreaTech은(는) 개인정보를 제1조(개인정보의 처리 목적)에서 명시한 범위 내에서만 처리하며, 정보주체의 동의, 법률의 특별한 규정 등 「개인정보 보호법」 제17조 및 제18조에 해당하는 경우에만 개인정보를 제3자에게 제공합니다. ② billcoreaTech

안드로이드 앱 만들기 : jetpack compose URL 에서 image 받아와서 보여 주기 (feat coil)

원본출처: 티스토리 바로가기 샘플 이미지 오늘은 앱을 만들면서 이미지를 보여 주어야 하는 경우 중에  URL에서 이미지를 가져와 보는 것에 대해서 기술해 보겠습니다.  URL에서 image를 가져온다는 것은 서버에 저장된 image 일수도 있고, SNS profile의 image 정보일수도 있을 것입니다.    구글에서 찾아보면 다른 것들도 많이 있기는 합니다.  그 중에서 coil 라이브러리를 이용해서 한번 만들어 보도록 하겠습니다.    gradle 설정 그래들 설정은 아래 한 줄입니다. 현재 시점에서 최신 버전인 것으로 보입니다.  이 글을 보시는 시점에 최신 버전이 아니라면 아마도 android studio는 추천을 해 줍니다. // image load from url implementation("io.coil-kt:coil-compose:2.2.2")   manaifest  설정 당연한 이야기 겠지만, url에서 이미지를 받아 와야 하기 때문에 권한 설정을 해야 합니다. 또한 인터넷에서 자료를 받아 오는 것은 지연이 발생할 수 있기 때문에 application에서도 다음 문구의 추가가 필요합니다.  <uses-permission android:name="android.permission.INTERNET" /> <application ... android:networkSecurityConfig="@xml/network_config" ... /> 이 설정을 하게 되면 xml 파일을 하나 추가해 주면 됩니다.  network_config.xml 이라는 이름으로 말입니다.  <?xml version="1.0" encoding="utf-8"?> <network-security-config> <domain-config cleartextT