- 스토어 설명에 네이버 지도앱 공유 링크를 수정하지 않고 그대로 붙여넣어야 한다는 안내를 추가하고, 실제 동작과 맞는 URL 사용 조건을 명시했습니다. - doc/store_desc/privacy_policy.md에 현재 구현 기준(키 기반 네이버 로컬 검색 미사용, 네이버 지도 웹/GraphQL 파싱, VWorld+Nominatim 지오코딩, 기상청 Open API, Google AdMob)을 반영한 개인정보 처리방침을 추가/정리했습니다. - lib/data/api/naver_api_client.dart에서 searchLocal 구현을 변경하여 네이버 로컬 검색 Open API를 더 이상 호출하지 않고, 항상 빈 결과를 반환하면서 디버그 로그만 남기도록 비활성화했습니다. - 네이버 URL/검색으로 가져온 식당 정보를 편집하는 뷰에서 위도/경도 필드를 선택 입력으로 완화하여, 지오코딩 실패 시에도 폼 검증만으로 저장이 막히지 않도록 조정했습니다. - AddRestaurantViewModel._resolveCoordinates에 allowFallbackWhenGeocodingFails 플래그를 추가하고, 네이버 URL 기반 추가 시에는 지오코딩 실패를 현재 위치/기본 좌표로 자동 대체하지 않고 명시적인 오류로 처리하여, 잘못된 주소로 저장되지 않도록 했습니다.
LunchPick 프로젝트 문서
문서 구조
📋 01_requirements/
- 프로젝트 요구사항 및 개발 가이드
🎨 02_design/
- UI/UX 설계 문서
- 화면 디자인 명세
🏗️ 03_architecture/
- 시스템 아키텍처 설계
- 기술 스택 결정 문서
- 코드 컨벤션
🔌 04_api/
- API 통합 가이드
- 네이버 단축 URL 처리 문서
🚀 05_deployment/
- 배포 관련 문서 (추후 추가 예정)
🧪 06_testing/
- 테스트 리포트
- 테스트 전략 문서
주요 문서 링크
데이터 시드 자동화
doc/restaurant_data/store.db가 변경되면flutter pub run build_runner build --delete-conflicting-outputs또는watch를 실행할 때마다assets/data/store_seed.json과store_seed.meta.json이 자동으로 재생성/병합됩니다(중복 제외, 해시 기반 버전 기록).- 개발 중에는
flutter pub run build_runner watch --delete-conflicting-outputs를 켜두고, CI/빌드 파이프라인에도 동일 명령을 pre-step으로 추가하면 배포 전에 항상 최신 시드가 패키징됩니다.
flutter run -d R3CN70AJJ6Y --debug --uninstall-first --dart-define=KMA_SERVICE_KEY=MTg0Y2UzN2VlZmFjMGJlNWNmY2JjYWUyNmUxZDZlNjIzYmU5MDYyZmY3NDM5NjVlMzkwZmNkMzgzMGY3MTFiZg== --dart-define=VWORLD_API_KEY=7E33D818-6B06-3957-BCEF-E37EF702FAD6 빌드시 키값을 포함해야 함.