Hotwire Native v1.2에는 다음과 같은 몇 가지 중요한 변화와 개선 사항이 포함되어 있습니다.
-
Route Decision Handlers 도입: v1.2에서는 iOS에도 RouteDecisionHandler 개념이 도입되었습니다(이전에는 Android에만 존재). 이는 앱 내에서 URL을 라우팅하는 방식을 유연하게 사용자 정의할 수 있는 강력한 방법을 제공합니다. Hotwire Native는 기본적으로 AppNavigationRouteDecisionHandler, SafariViewControllerRouteDecisionHandler (iOS 전용), BrowserTabRouteDecisionHandler (Android 전용), SystemNavigationRouteDecisionHandler와 같은 핸들러를 등록하여 내부 및 외부 URL 라우팅을 제어합니다. 개발자는 필요에 따라 자신만의 RouteDecisionHandler 구현을 등록하여 기본 동작을 커스터마이징할 수 있어, 앱의 특정 요구사항에 맞춰 라우팅 로직을 정교하게 제어할 수 있습니다.
-
서버 기반 히스토리컬 로케이션 URL 지원 강화: Ruby on Rails를 사용하는 개발자를 위해
turbo-rails
gem이 제공하는recede_or_redirect_to
,refresh_or_redirect_to
,resume_or_redirect_to
와 같은 히스토리컬 로케이션 라우트를 Hotwire Native 앱에서 내비게이션 스택을 조작하는 데 사용할 수 있도록 내장 지원이 추가되었습니다. v1.2에서는 이러한 ‘명령’ URL을 추가적인 경로 설정 없이 처리할 수 있으며, 모달 화면 자동 해제 기능도 개선되었습니다. 이는 Rails 백엔드와 Hotwire Native 프론트엔드 간의 통합을 더욱 긴밀하게 만들어, 서버에서 직접 앱의 내비게이션 흐름을 제어할 수 있는 강력한 가능성을 제공합니다. -
네이티브 하단 탭(Bottom Tabs) 지원: Hotwire Native를 사용하는 개발자들이 가장 많이 요청했던 기능 중 하나인 네이티브 하단 탭 내비게이션에 대한 공식적인 답변으로, iOS용 HotwireTabBarController와 Android용 HotwireBottomNavigationController가 도입되었습니다. 데모 앱 역시 업데이트되어 이 기능을 설정하고 사용하는 방법을 명확하게 보여줍니다. 이 기능은 Hotwire Native 앱의 UI/UX 유연성을 크게 향상시켜, 사용자에게 더 익숙하고 직관적인 내비게이션 경험을 제공할 수 있게 합니다.
-
새로운 데모 앱 출시: Hotwire Native의 모든 기능을 더 효과적으로 시연하기 위해 iOS 및 Android용 새로운 데모 앱과 이 앱들이 활용할 수 있는 새로운 Rails 웹 앱이 제작되었습니다. 이 데모 앱들은 개발자들이 Hotwire Native를 시작하고 다양한 기능을 이해하며 실제 프로젝트에 적용하는 데 매우 유용한 리소스가 됩니다. Joe Masilotti의 데모 앱 개선에 대한 큰 기여와 그의 저서 ‘Hotwire Native for Rails Developers’ 또한 언급되어 추가적인 학습 자료를 제공합니다.