Flutter에서 HomeWidget 및 Back4App으로 홈 화면 위젯 만들기 방법
홈 화면 위젯을 사용하면 사용자가 앱을 열지 않고도 장치의 홈 화면에서 앱의 실시간 정보에 직접 접근할 수 있습니다. Flutter를 사용하여 이러한 위젯을 만들려면 일부 플랫폼별 코드가 필요합니다. 그러나 home_widget 패키지가 이 격차를 해소하여 Dart 코드를 사용하여 Flutter 앱과 홈 화면 위젯 간의 데이터 교환을 가능하게 합니다.
이 튜토리얼에서는 home_widget 패키지를 사용하여 Flutter에서 홈 화면 위젯을 만드는 방법과 이를 Parse Server 기반의 백엔드 서비스인 Back4App과 통합하는 방법을 배웁니다. 이 튜토리얼이 끝나면 Back4App의 데이터를 홈 화면 위젯에 표시하는 Flutter 앱을 갖게 될 것입니다.
이 튜토리얼을 완료하려면 다음이 필요합니다:
- IDE 또는 텍스트 편집기(예: Visual Studio Code 또는 Android Studio).
- 플랫폼별 설정이 Android 및 iOS 홈 화면 위젯에 필요합니다.
터미널을 열고 다음을 실행하세요:
프로젝트 디렉토리로 이동:
열기 pubspec.yaml 및 다음 의존성을 추가:
다음 명령어를 실행하여 flutter pub get 패키지를 설치합니다.
- "새 앱 만들기"를 클릭합니다.
- 애플리케이션 이름을 입력합니다. 예: "HomeWidgetApp", 그리고 "생성"을 클릭합니다.
- 애플리케이션 대시보드에서 "Database" 섹션으로 이동합니다.
- "Create a class"를 클릭합니다.
- 모달에서:
- "Custom"을 선택합니다.
- 클래스 이름으로 "Message"을 입력합니다.
- "Create class"를 클릭합니다.
- "Message" 클래스에서 "+"를 클릭하여 새 열을 추가합니다.
- 다음 열을 추가합니다:
- title: 유형 String
- content: 유형 String
- "Message" 클래스에 샘플 데이터를 추가합니다. 예를 들어:
- App Settings > Security & Keys로 이동합니다.
- Application ID와 Client Key를 기록해 둡니다.
열기 lib/main.dart 그리고 다음과 같이 수정하세요:
- 다음으로 교체하세요 'YOUR_APPLICATION_ID' 및 'YOUR_CLIENT_KEY'를 실제 Back4App 자격 증명으로.
새 파일 만들기 lib/home_page.dart:
- 메시지 클래스: 메시지 데이터를 보유하기 위한 간단한 모델 클래스입니다.
- fetchMessage(): Back4App의 메시지 클래스에서 데이터를 가져오고 message 변수를 업데이트합니다.
- updateHomeWidget(): 가져온 데이터를 홈 화면 위젯에 저장하고 HomeWidget.saveWidgetData를 사용하여 업데이트를 트리거합니다.HomeWidget.updateWidget.
- build(): 메시지 데이터를 표시하고 메시지를 새로 고치는 버튼을 제공합니다.
새 XML 레이아웃 파일을 android/app/src/main/res/layout/에 생성하고 home_widget.xml:
새로운 Java 클래스를 생성합니다 android/app/src/main/java/your/package/name/ 이름은 HomeWidgetProvider.java:
다음으로 교체합니다 your.package.name 실제 패키지 이름으로.
위젯 제공자를 추가합니다 AndroidManifest.xml:
새로운 XML 파일을 생성합니다 android/app/src/main/res/xml/ 이름은 home_widget_info.xml:
- Xcode에서 Flutter 프로젝트를 열려면 ios/Runner.xcworkspace를 엽니다.
- 클릭 파일 > 새로 만들기 > 타겟.
- 선택 위젯 확장을 클릭하고 다음을 클릭합니다.
- 제품 이름으로 HomeWidget을 입력하고 구성 의도 포함이 선택 해제되어 있는지 확인합니다.
- 클릭 완료하고 활성화합니다.
HomeWidget 확장 프로그램에서 HomeWidget.swift를 열고 수정합니다:
- "YOUR_GROUP_ID"를 YOUR_GROUP_ID로 바꾸세요 (예: group.com.example.homeWidgetApp).
- Xcode에서 프로젝트를 선택하고 Signing & Capabilities로 이동하세요.
- 주 앱 타겟과 위젯 확장 모두에 "App Groups"를 추가하세요.
- 새로운 앱 그룹을 생성하세요 (예: group.com.example.homeWidgetApp).
- 두 타겟 모두 동일한 앱 그룹이 활성화되어 있는지 확인하세요.
당신의 updateHomeWidget() 메서드에서 home_page.dart, 위젯 이름을 업데이트하세요:
터미널에서 다음을 실행하세요:
- 홈 화면을 길게 눌러 "위젯"을 선택하세요.
- 위젯 목록에서 앱을 찾으세요.
- 위젯을 홈 화면으로 드래그 앤 드롭하세요.
- 홈 화면을 길게 눌러 진동 모드로 들어가세요.
- 왼쪽 상단의 "+" 버튼을 누르세요.
- 이름으로 위젯을 검색하세요.
- 위젯을 홈 화면에 추가하세요.
- 앱에서 "메시지 새로 고침" 버튼을 눌러 Back4App에서 새로운 데이터를 가져옵니다.
- 홈 화면의 위젯이 새로운 데이터로 업데이트되어야 합니다.
이 튜토리얼에서는 home_widget 패키지를 사용하여 Flutter에서 홈 화면 위젯을 만드는 방법과 Back4App과 통합하여 동적 데이터를 표시하는 방법을 배웠습니다. 이를 통해 사용자는 홈 화면에서 최신 정보를 제공받아 참여도와 사용자 경험을 향상시킬 수 있습니다.
- 동적 데이터: Back4App의 실시간 쿼리를 사용하여 실시간 데이터 업데이트를 구현합니다.
- 상호작용성: 위젯에 클릭 동작을 추가하여 앱의 특정 페이지를 엽니다.
- 사용자 정의: 위젯을 앱의 테마와 디자인에 맞게 스타일링합니다.
행복한 코딩!