{"version":1,"pages":[{"id":"DEWxGATfuOPeGEpmDXxz","title":"DEMO App 설치","pathname":"/start","siteSpaceId":"sitesp_YC40y","emoji":"1f608","description":"Alioth V² for Flutter - AOS/IOS 데모앱 설치"},{"id":"dg70b3Z2dq180Y0fvPPo","title":"Flutter 개발환경","pathname":"/start/flutter/setup","siteSpaceId":"sitesp_YC40y","emoji":"2699","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"j5Hp12i2gEahXm9qIpLd","title":"Flutter 시작하기","pathname":"/start/flutter/start","siteSpaceId":"sitesp_YC40y","emoji":"1f9d1-1f4bb","description":"","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"zvIwD2jbzPs2mYzt9bfV","title":"폰에서 실행","pathname":"/start/flutter/device","siteSpaceId":"sitesp_YC40y","emoji":"1f4f2","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"HL42apdybe5VMRqa6byD","title":"개발가이드","pathname":"/start/flutter/guide","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"MkYCLRlgu4sJyjlIexOs","title":"솔루션 설치","pathname":"/start/flutter/solution","siteSpaceId":"sitesp_YC40y","emoji":"1f680","description":"Enterprise Cross-Platform Install","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"RxquETKdRcVTrnYZVgLB","title":"코드가이드","pathname":"/start/flutter/code","siteSpaceId":"sitesp_YC40y","emoji":"1f6a6","description":"플랫폼에서 기본적으로 제공하는 코드 가이드로, 각 프로젝트에서 플러터 앱 개발시 참고할 수 있습니다.","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"VwAVF7wlf3zjpiysymmZ","title":"명명 규칙및 주석처리","pathname":"/start/flutter/code/undefined","siteSpaceId":"sitesp_YC40y","description":"프로그래밍에서 명명 규칙은 코드의 가독성을 향상시키고 유지보수를 용이하게 만드는 중요한 부분입니다. 변수, 함수, 클래스, 상수 및 주석을 작성하는 방법은 팀과의 협업을 용이하게 하고 코드의 일관성을 유지하는 데 도움이 됩니다. 이에 대한 명명 규칙과 주석 작성 방법을 아래에서 확인해보세요.","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"코드가이드","emoji":"1f6a6"}]},{"id":"p8ks2mb4Cjca1pUl43WZ","title":"코딩 컨벤션","pathname":"/start/flutter/code/undefined-1","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"코드가이드","emoji":"1f6a6"}]},{"id":"yI9kGAPMhfYXA9zymVFd","title":"디렉토리 생성및 관리","pathname":"/start/flutter/code/undefined-2","siteSpaceId":"sitesp_YC40y","description":"앱 개발 중에 디렉토리 생성과 관리는 중요한 부분입니다. Flutter는 이러한 작업을 간단하게 처리할 수 있는 다양한 방법을 제공합니다.","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"코드가이드","emoji":"1f6a6"}]},{"id":"2zgxMNqodRyJSB0Ijzwt","title":"페이지 작성","pathname":"/start/flutter/code/undefined-3","siteSpaceId":"sitesp_YC40y","description":"Flutter는 모바일 앱 및 웹 앱을 개발하는 강력한 프레임워크로, 다양한 화면을 구성하는 것이 중요한 업무 중 하나입니다. 아래에서 Flutter로 페이지를 작성하고 관리하는 방법을 확인해보세요.","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"코드가이드","emoji":"1f6a6"}]},{"id":"gPsf84J8375d0ADVMHxO","title":"Flutter 아키텍쳐","pathname":"/start/flutter/factory","siteSpaceId":"sitesp_YC40y","emoji":"1f3ed","description":"Technical Factory","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"CfS5CVy0xaaYcKjHvpz1","title":"채널링","pathname":"/start/flutter/factory/channeling","siteSpaceId":"sitesp_YC40y","description":"네이티브 인터페이스","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"}]},{"id":"Zvul61Nttfz5R8DvfFMH","title":"웹뷰","pathname":"/start/flutter/factory/webview","siteSpaceId":"sitesp_YC40y","description":"Flutter InAppWebView","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"}]},{"id":"vuVF345dniSEJGwBpspZ","title":"웹뷰 설정","pathname":"/start/flutter/factory/webview/settings","siteSpaceId":"sitesp_YC40y","description":"","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"},{"label":"웹뷰"}]},{"id":"DtsYUgQCPiICIuENM2gn","title":"웹뷰 연동","pathname":"/start/flutter/factory/webview/javascript","siteSpaceId":"sitesp_YC40y","description":"WebView와 Web(React, Vue, Vanilla JS)간 연동하는 방식입니다.","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"},{"label":"웹뷰"}]},{"id":"HA0bFTT6p63PrD5BLRLT","title":"보안 (Security)","pathname":"/start/flutter/factory/security","siteSpaceId":"sitesp_YC40y","description":"기업용 크로스플랫폼에서는 대칭키/비대칭키/해시등 다양한 보안모듈을 연동해서 사용할 수 있습니다. 레거시 네이티브기반의 암호모듈과도 100% 연동및 호환이 가능하며 앱 위/변조 탐지및 차단, 탈옥및 루팅탐지및 차단등의 기능을 제공하고 있습니다.","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"}]},{"id":"ItRlFPbQHeGxPZBSr3nq","title":"대칭키 암호알고리즘","pathname":"/start/flutter/factory/security/undefined","siteSpaceId":"sitesp_YC40y","description":"(Symmetric-Key Algorithm)","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"},{"label":"보안 (Security)"}]},{"id":"llTqvjBh2ZLEyEmKsorq","title":"비대칭키 암호알고리즘","pathname":"/start/flutter/factory/security/undefined-1","siteSpaceId":"sitesp_YC40y","description":"(Asymmetric-Key Algorithm)","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"},{"label":"보안 (Security)"}]},{"id":"HwJIgBpi4Nc2m6TJ48yP","title":"메시지 다이제스트","pathname":"/start/flutter/factory/security/undefined-2","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"},{"label":"보안 (Security)"}]},{"id":"fepcdrDtdUXQUaRce9fN","title":"탈옥및 루팅 탐지및 차단","pathname":"/start/flutter/factory/security/undefined-3","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"},{"label":"보안 (Security)"}]},{"id":"jdHGJ43HwHxAGLSW0K3z","title":"앱 위/변조 탐지및 차단","pathname":"/start/flutter/factory/security/undefined-4","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"},{"label":"보안 (Security)"}]},{"id":"DZMLX4V3mZfnjJfPzHFZ","title":"코드 난독화","pathname":"/start/flutter/factory/security/codeguard","siteSpaceId":"sitesp_YC40y","description":"Code Obfuscation","breadcrumbs":[{"label":"크로스플랫폼 개발환경"},{"label":"Flutter 아키텍쳐","emoji":"1f3ed"},{"label":"보안 (Security)"}]},{"id":"n3k9kiO9bmZE2dh0v8yA","title":"관리시스템","pathname":"/start/flutter/admin","siteSpaceId":"sitesp_YC40y","emoji":"1f5a5","description":"Cross-Platform Management System","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"hlo2vgngPGldsmhj1t0W","title":"협업도구","pathname":"/start/flutter/collaboration","siteSpaceId":"sitesp_YC40y","emoji":"1f386","description":"기업용 크로스플랫폼에서는 최신 트렌드의 다양한 협업도구들을 사용합니다.","breadcrumbs":[{"label":"크로스플랫폼 개발환경"}]},{"id":"2EDqp31KTsZVivJAL7bH","title":"UI/UX","pathname":"/start/uiux/ui-ux","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"UIUX 컴포넌트"}]},{"id":"zwMhlzXu16ykKILjwicx","title":"테마 적용","pathname":"/start/uiux/ui-ux/theme","siteSpaceId":"sitesp_YC40y","description":"플러터(Flutter) 앱에서 테마를 적용하는 것은 앱의 디자인과 사용자 경험을 개선하는 핵심적인 부분입니다. 테마를 사용하면 앱의 색상, 폰트, 그림자, 및 기타 스타일 요소를 일관되게 제어할 수 있어서, 사용자들에게 일관성 있는 시각적 경험을 제공할 수 있습니다. 간단한 테마 적용 예제를 통해 플러터 앱에서 테마를 어떻게 활용하는지 확인해보세요.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"TXBQ9XYXDk8gxVG6dghX","title":"화면방향전환","pathname":"/start/uiux/ui-ux/orientation","siteSpaceId":"sitesp_YC40y","description":"Flutter를 사용하여 모바일 앱을 개발할 때 화면 방향 전환은 매우 중요한 고려 사항 중 하나입니다. 사용자가 기기를 가로 또는 세로로 회전할 때, 앱의 화면도 함께 회전하거나 고정시켜야 합니다. SystemChrome를 사용하여 화면 방향을 제어하며, 다양한 화면 방향 옵션을 활용할 수 있습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"LEoMmuGs20lPp5QWbS25","title":"토스트 (Toast)","pathname":"/start/uiux/ui-ux/toast","siteSpaceId":"sitesp_YC40y","description":"Flutter 앱에서 사용자에게 간단한 메시지나 알림을 효과적으로 전달하기 위해서 Toast 위젯을 사용합니다. Toast 위젯을 사용하면 사용자에게 시각적인 피드백을 제공하고 앱의 사용성을 향상시킬 수 있습니다. 다양한 종류의 Toast 메시지를 활용하여 사용자와의 상호작용을 개선할 수 있습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"1IMwEbwV90fUkE60O3MU","title":"버튼 (Button)","pathname":"/start/uiux/ui-ux/button","siteSpaceId":"sitesp_YC40y","description":"플러터에서 자체적으로 제공하는 Button 위젯 뿐만 아니라, 인터넷에 공개된 UI/UX 컴포넌트들을 조합하여 만들어진 다양한 디자인의 버튼을 손쉽게 개발할 수 있습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"anfjp3HSJSUUbgf6vI6K","title":"텍스트 (Text)","pathname":"/start/uiux/ui-ux/text","siteSpaceId":"sitesp_YC40y","description":"플러터에서 다양한 텍스트 형태를 사용할 수 있습니다. Text 위젯은 텍스트를 효율적으로 표시하고 스타일을 적용하는데 사용되며, 고객 요구사항에 맞게 커스터마이즈할 수 있습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"5ZuVx14dmxP9coZa9vIF","title":"탭바 (TabBar)","pathname":"/start/uiux/ui-ux/tabbar","siteSpaceId":"sitesp_YC40y","description":"탭바(TabBar)는 Flutter 앱에서 화면을 효과적으로 구성하고 다양한 컨텐츠 간 전환이 필요할 때 사용 되는 중요한 UI 요소입니다. 탭바 위젯을 사용하여 다른 화면 또는 컨텐츠로 빠르게 전환하는 기능을 구현할 수 있습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"lSDYoGsnXeXDLQU9LN0Y","title":"이미지뷰 (ImageView)","pathname":"/start/uiux/ui-ux/imageview","siteSpaceId":"sitesp_YC40y","description":"이미지는 모바일 앱에서 중요한 부분을 차지하며, 사용자 경험을 향상시키고 앱을 더욱 흥미롭게 만드는 데 큰 역할을 합니다. Flutter 앱에서 사용 가능한 이미지 슬라이더 및 이미지 처리를 확인해보세요.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"scC2TqiACsrK5m8pafIR","title":"카메라/이미지","pathname":"/start/uiux/ui-ux/camera","siteSpaceId":"sitesp_YC40y","description":"카메라와 이미지 관련 기능을 가진 앱은 사용자가 쉽게 사진과 동영상을 찍거나 갤러리에서 이미지를 선택하고, 다양한 작업을 수행할 수 있도록 돕습니다. 아래에서 이러한 앱의 주요 기능과 사용 방법을 확인해보세요.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"FcbAObsDr6eWFBdY17cH","title":"페이지 트랜지션","pathname":"/start/uiux/ui-ux/page-transition","siteSpaceId":"sitesp_YC40y","description":"플러터(Flutter) 앱을 개발할 때 화면 전환은 중요한 부분 중 하나입니다. 사용자 경험을 향상시키고 앱의 내비게이션을 더 매끄럽게 만드는 데 도움이 됩니다. 아래에서 플러터에서 사용 가능한 페이지 트랜지션을 확인해보세요.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"F2l0KPwrC9XStHa8ZXDW","title":"입력필드 (TextField)","pathname":"/start/uiux/ui-ux/textfield","siteSpaceId":"sitesp_YC40y","description":"Flutter는 사용자로부터 다양한 형태의 데이터를 입력받아야 하는 경우 TextField 위젯을 사용하여 입력 필드를 구현할 수 있습니다. TextField 위젯은 텍스트 입력, 숫자 입력, 핸드폰 번호, 신용카드 번호 등 다양한 유형의 입력을 처리할 수 있어 앱 개발에서 핵심 역할을 합니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"4JuUBmitPBN66lR5hVO6","title":"체크박스 (CheckBox)","pathname":"/start/uiux/ui-ux/checkbox","siteSpaceId":"sitesp_YC40y","description":"체크박스 위젯은 사용자에게 선택 옵션을 제공하고 선택 사항을 수집하는 데 사용되는 중요한 위젯입니다. 아래에서 다양한 체크박스 위젯 예제와 설명을 포함한 코드 예시를 확인해보세요.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"ihaSPgC06TqDumUNsV1D","title":"라디오버튼 (RadioButton)","pathname":"/start/uiux/ui-ux/radiobutton","siteSpaceId":"sitesp_YC40y","description":"라디오버튼(RadioButton) 위젯은 사용자가 여러 옵션 중 하나를 선택하는 데 사용됩니다. 아래에서 다양한 형식의 라디오버튼과 라디오버튼 그룹을 설명하는 코드 예제를 확인해보세요.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"KurBb5VubBn6L0ABPnuj","title":"로딩바 (Loading Indicator)","pathname":"/start/uiux/ui-ux/loading-indicator","siteSpaceId":"sitesp_YC40y","description":"로딩 인디케이터는 앱이 데이터를 가져오거나 작업을 수행하는 동안 사용자에게 진행 상황을 시각적으로 표시하는 중요한 요소입니다. 로딩 인디케이터는 앱의 사용자 경험을 향상시키고 로딩 화면을 관리하는데 도움이 됩니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"qroQwZTo4ibE6CDVCMWv","title":"바텀시트 (BottomSheet)","pathname":"/start/uiux/ui-ux/bottomsheet","siteSpaceId":"sitesp_YC40y","description":"바텀시트 (Bottom Sheet)은 모바일 앱 및 모바일 프레임워크에서 자주 사용되는 UI 요소 중 하나입니다. 이것은 화면 하단에서 위로 슬라이딩하여 추가 정보를 제공하거나 사용자와 상호 작용할 수 있는 패널 형태의 위젯입니다. 바텀시트를 사용하여 앱 내에서 다양한 작업 및 정보 표시를 구현할 수 있습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"NL3FrAI04s5P8X5NUs8t","title":"리스트뷰 (ListView)","pathname":"/start/uiux/ui-ux/listview","siteSpaceId":"sitesp_YC40y","description":"Flutter에서 데이터 목록을 표시하고 스크롤하는 데 사용되는 중요한 위젯 중 하나입니다. 이 위젯은 동적으로 데이터를 생성하여 스크롤 가능한 목록을 만들 수 있도록 도와줍니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"sCFe3SV39w2BeT9Mkx3I","title":"슬리버 (Sliver)","pathname":"/start/uiux/ui-ux/sliver","siteSpaceId":"sitesp_YC40y","description":"슬리버(Sliver) 위젯은 Flutter에서 스크롤 가능한 컨텐츠를 구성하는 데 사용되며, 다양한 레이아웃을 생성할 수 있는 강력한 도구 중 하나입니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"robUfjLhzq2G6v89mfhj","title":"사운드 (Sound)","pathname":"/start/uiux/ui-ux/sound","siteSpaceId":"sitesp_YC40y","description":"사운드는 앱에 음악, 효과음 또는 녹음된 오디오를 추가하는 데 사용될 수 있으며 사용자 경험을 향상시키는 데 중요한 역할을 합니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"EkXdm6hNQ7sEdqjX1jF9","title":"애니메이션 (Animation)","pathname":"/start/uiux/ui-ux/animation","siteSpaceId":"sitesp_YC40y","description":"애니메이션은 Flutter 애플리케이션을 더 생동감 있게 만들어주는 중요한 기술입니다. Flutter는 다양한 애니메이션을 구현할 수 있는 다양한 방법을 제공합니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"555qrPZ4ovARc0ATq2ff","title":"위치 및 정렬","pathname":"/start/uiux/ui-ux/axis-alignment","siteSpaceId":"sitesp_YC40y","description":"Flutter에서 위젯을 배치하고 정렬하는 데 중요한 역할을 하는 위치 및 정렬 위젯에 대한 가이드를 제공합니다. 이 예제에서는 Row 및 Column 위젯을 사용하여 다양한 위치 및 정렬 옵션을 시연합니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"Fg3kmQ1GcmVufEk62e4x","title":"커스텀 키보드","pathname":"/start/uiux/ui-ux/custom-keyboard","siteSpaceId":"sitesp_YC40y","description":"숫자 입력, 또는 다양한 유형의 입력을 받을 수 있는 커스텀 키보드가 있습니다. 다양한 유형의 키보드는 사용자가 정보를 쉽게 입력하고 앱을 더 효과적으로 활용할 수 있도록 돕습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"H3gQyXKWY3inWPmJPzSy","title":"카드 (Card)","pathname":"/start/uiux/ui-ux/card","siteSpaceId":"sitesp_YC40y","description":"Flutter는 다양한 디자인 요소를 구현하기 위한 강력한 도구를 제공합니다. 그 중에서도 다양한 형태와 스타일의 카드 위젯을 만들어 UI를 풍부하게 꾸밀 수 있습니다. 이번 글에서는 몇 가지 유용한 카드 위젯을 소개하겠습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"XJTEWGxL1r2keopTFrDe","title":"토글 버튼 (Toggle Button)","pathname":"/start/uiux/ui-ux/toggle-button","siteSpaceId":"sitesp_YC40y","description":"Flutter는 사용자와의 상호작용을 강화하고 앱의 기능을 확장하기 위한 다양한 위젯을 제공합니다. 이 중에서 Toggle Button 위젯은 특히 상태 전환 및 설정 변경에 유용합니다. 이 글에서는 Flutter의 다양한 Toggle Button 위젯을 살펴보고 활용하는 방법을 소개하겠습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"YVzntgCp4cKv1GVlZKcO","title":"다이얼로그 (Dialog)","pathname":"/start/uiux/ui-ux/dialog","siteSpaceId":"sitesp_YC40y","description":"앱에서 사용자와 상호 작용하고 정보를 표시하기 위해 사용하는 다이얼로그 위젯은 매우 유용합니다. 다이얼로그 위젯을 사용하여 간단한 정보 제공부터 중요한 결정을 요구하는 상황까지 다양한 시나리오를 다룰 수 있습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"MlmQ8ZJn26no3pBydZ6K","title":"QR코드","pathname":"/start/uiux/ui-ux/qr","siteSpaceId":"sitesp_YC40y","description":"QR 코드(Quick Response Code)는 정보를 빠르게 읽을 수 있는 이차원 매트릭스 바코드입니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"4Wz494thwKJvhwWt1jVl","title":"페이지뷰 (PageView)","pathname":"/start/uiux/ui-ux/pageview","siteSpaceId":"sitesp_YC40y","description":"한 화면에서 여러 페이지를 넘겨볼 수 있도록 구현되는 위젯 입니다. 페이지뷰를 사용하면 사용자는 여러 페이지를 스와이프(swipe) 동작으로 편리하게 이동할 수 있습니다.","breadcrumbs":[{"label":"UIUX 컴포넌트"},{"label":"UI/UX"}]},{"id":"ttt7VoZi4ZS86mQjkZIb","title":"공통모듈","pathname":"/start/common/index","siteSpaceId":"sitesp_YC40y","description":"","breadcrumbs":[{"label":"Common 컴포넌트"}]},{"id":"a6Q74CUtpknIIuPhGgnZ","title":"데이터통신과 JSON 파싱","pathname":"/start/common/index/json","siteSpaceId":"sitesp_YC40y","description":"플러터와 백엔드 서버 간의 API(XML/JSON) 통신을 수행하는 방법을 소개합니다. HTTP/HTTPS GET 및 POST 요청을 사용하여 데이터를 통신하고, 구조체 생성 및 데이터를 JSON 형식으로 파싱하는 방법을 안내합니다.","breadcrumbs":[{"label":"Common 컴포넌트"},{"label":"공통모듈"}]},{"id":"YRvAU4HLBZdZKKlTt2t1","title":"\b인증 연동","pathname":"/start/common/index/authentification","siteSpaceId":"sitesp_YC40y","description":"아이디/비밀번호 인증 및 생체로그인, 애플로그인, 구글로그인, 카카오톡 로그인, 네이버 로그인 등 다양한 로그인 방법을 샘플소스와 함께 안내합니다.","breadcrumbs":[{"label":"Common 컴포넌트"},{"label":"공통모듈"}]},{"id":"oidaqrIPI2UeVbhyAjyp","title":"채널링","pathname":"/start/common/index/channel","siteSpaceId":"sitesp_YC40y","description":"Flutter와 네이티브 코드 간의 상호작용 방법을 안내합니다. Flutter에서 네이티브 코드를 호출하고 네이티브 기능을 통합하여 플러터 앱을 더 강력하게 만들 수 있습니다.","breadcrumbs":[{"label":"Common 컴포넌트"},{"label":"공통모듈"}]},{"id":"FOoVF0ioITDBMKZkC0j8","title":"네비게이션","pathname":"/start/common/index/nevigation","siteSpaceId":"sitesp_YC40y","description":"Flutter 앱에서 네비게이션과 경로 매개변수를 활용하는 방법을 안내합니다. 네비게이션은 앱 내의 화면 전환을 관리하고, 경로 매개변수를 사용하여 화면 간 데이터를 전달할 수 있습니다.","breadcrumbs":[{"label":"Common 컴포넌트"},{"label":"공통모듈"}]},{"id":"AQ6S7qrlnv290TwEdtv8","title":"푸시 메시지","pathname":"/start/common/index/push-message","siteSpaceId":"sitesp_YC40y","description":"구글 파이어베이스를 활용하여 Flutter 앱에서 푸시 메시지를 관리하는 방법을 안내합니다. 푸시 메시지를 통해 사용자에게 중요한 정보나 업데이트를 전달할 수 있습니다.","breadcrumbs":[{"label":"Common 컴포넌트"},{"label":"공통모듈"}]},{"id":"pe6E7u6U7paj6OIqvYd2","title":"SMS 인증","pathname":"/start/common/index/sms","siteSpaceId":"sitesp_YC40y","description":"Flutter 앱에서 SMS를 사용하여 인증 기능을 구현하는 방법을 안내합니다. SMS 인증은 사용자가 휴대폰 번호로 인증 코드를 받아 인증하는 간단하면서도 효과적인 방법입니다.","breadcrumbs":[{"label":"Common 컴포넌트"},{"label":"공통모듈"}]},{"id":"QsasiKL77OMwydKlqJED","title":"예외처리","pathname":"/start/common/index/exception","siteSpaceId":"sitesp_YC40y","description":"플러터(Flutter) 앱에서 예외 처리는 앱이 예상치 못한 상황에서도 안정적으로 동작할 수 있도록 도와줍니다. 예외 처리는 코드 실행 중에 발생할 수 있는 예기치 않은 문제를 다루는 프로그래밍 개념입니다. 플러터 앱에서 예외는 다양한 상황에서 발생할 수 있습니다. 이러한 예외를 적절하게 처리하면 앱이 충돌하지 않고 계속 정상적으로 동작할 수 있습니다.","breadcrumbs":[{"label":"Common 컴포넌트"},{"label":"공통모듈"}]},{"id":"GwTSWmsUZ5gFTfk495Vo","title":"보안모듈","pathname":"/start/security/index","siteSpaceId":"sitesp_YC40y","description":"","breadcrumbs":[{"label":"Security 컴포넌트"}]},{"id":"NrhV8jxm1NKjaxKceRiO","title":"메시지 다이제스트","pathname":"/start/security/index/message-digest","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"Security 컴포넌트"},{"label":"보안모듈"}]},{"id":"uatYKSN6KX7cwqtInqev","title":"암/복호화","pathname":"/start/security/index/en-decoding","siteSpaceId":"sitesp_YC40y","description":"","breadcrumbs":[{"label":"Security 컴포넌트"},{"label":"보안모듈"}]},{"id":"HETANbsPbBV0R26dNlwD","title":"옵션모듈","pathname":"/start/option/index","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"Option 컴포넌트"}]},{"id":"dzUS5wC5D183nRCSGTAD","title":"동영상 플레이어","pathname":"/start/option/index/video-player","siteSpaceId":"sitesp_YC40y","description":"플러터에서 재생가능한 다양한 형태의 영상파일(MP4, M3U8 등) 재생방법을 샘플소스와 함께 제공합니다. 영상 제어판은 고객사의 환경에 맞도록 커스트마이징이 가능합니다.","breadcrumbs":[{"label":"Option 컴포넌트"},{"label":"옵션모듈"}]},{"id":"bQrULsRtTl6EmvhpikDa","title":"유튜브 연동","pathname":"/start/option/index/youtube-player","siteSpaceId":"sitesp_YC40y","description":"플러터에서 사용 가능한 유튜브 동영상 재생 플레이어 위젯으로, 시청하고 싶은 유튜브 동영상 주소를 입력필드에 입력하면 videId를 추출하여 영상을 재생합니다.","breadcrumbs":[{"label":"Option 컴포넌트"},{"label":"옵션모듈"}]},{"id":"cvuy0EYA1mo9eJtzWH4T","title":"차트","pathname":"/start/option/index/chart","siteSpaceId":"sitesp_YC40y","description":"플러터에서 사용가능한 다양한 차트 라이브러리를 샘플소스와 함께 제공합니다.","breadcrumbs":[{"label":"Option 컴포넌트"},{"label":"옵션모듈"}]},{"id":"2aWEisM8kMUIvB8of6IU","title":"SNS 공유","pathname":"/start/option/index/sns","siteSpaceId":"sitesp_YC40y","description":"플러터와 SNS 간 공유하는 가이드 위젯입니다.","breadcrumbs":[{"label":"Option 컴포넌트"},{"label":"옵션모듈"}]},{"id":"9yHyQZ3iuPauOE6YJzYh","title":"지도","pathname":"/start/option/index/map","siteSpaceId":"sitesp_YC40y","description":"","breadcrumbs":[{"label":"Option 컴포넌트"},{"label":"옵션모듈"}]},{"id":"wmw7mA6N1ftrdMmf7fDO","title":"로컬 DB","pathname":"/start/option/index/db","siteSpaceId":"sitesp_YC40y","breadcrumbs":[{"label":"Option 컴포넌트"},{"label":"옵션모듈"}]},{"id":"Ul08CINpRUJXMfL4ma4U","title":"라이센스및 기술지원","pathname":"/start/contract","siteSpaceId":"sitesp_YC40y","emoji":"1f381","description":"License & Technical Support"},{"id":"osbJ0aOzDc4LFnEP0weE","title":"고객사","pathname":"/start/customer","siteSpaceId":"sitesp_YC40y","emoji":"1f3e2","description":"Our Customer"}]}