Skip to content

[feat]: mixpanel Analytics 추가#70

Merged
Roy-wonji merged 2 commits intomainfrom
feature/analytics
Dec 18, 2025
Merged

[feat]: mixpanel Analytics 추가#70
Roy-wonji merged 2 commits intomainfrom
feature/analytics

Conversation

@Roy-wonji
Copy link
Contributor

🔗 관련 이슈

  • 관련 이슈: Analytics 이중 트래킹 시스템 구축

✨ 작업 내용

  • Mixpanel Analytics 추가: Firebase Analytics와 함께 이중 트래킹 시스템 구축
  • Analytics Repository 신규 생성: Firebase + Mixpanel 통합 이벤트 전송 로직 구현
  • 타입 안전성 개선: as Any 명시적 캐스팅으로 Swift 타입 모호성 오류 해결
  • 앱 초기화 로직 개선: AppDelegate에서 Mixpanel 자동 초기화

📸 Showcase

📌 내부 Analytics 시스템이므로 UI 변경사항 없음


📝 참고 사항

데이터 비교 기준: Firebase Analytics와 Mixpanel의 이벤트 트래킹 데이터를 비교 분석하여, 더 나은 분석 결과를 제공하는 플랫폼의 데이터를 우선적으로 활용할 예정입니다. 두 플랫폼의 데이터 수집 정확도, 실시간성, 분석 깊이를 종합적으로 평가한 후 최적의 Analytics 솔루션을 결정하게 됩니다.

Motivation 🥳 (코드를 추가/변경하게 된 이유)

기존 Firebase Analytics 단독 사용에서 Mixpanel을 추가하여 이중 트래킹 시스템을 구축함으로써:

  • 더 정확한 사용자 행동 데이터 수집
  • 두 플랫폼의 분석 결과 비교를 통한 데이터 신뢰성 향상
  • 향후 최적의 Analytics 플랫폼 선택을 위한 A/B 테스트 환경 구성

Key Changes 🔥 (주요 구현/변경 사항)

1. Mixpanel 통합

// AppDelegate.swift
Mixpanel.initialize(token: mixPanelKey ?? "", trackAutomaticEvents: false)

2. 이중 트래킹 시스템

// AnalyticsRepository.swift
Analytics.logEvent(eventType.rawValue, parameters: params)  // Firebase
Mixpanel.mainInstance().track(event: eventType.rawValue, properties: params)  // Mixpanel

3. 타입 안전성 개선

// 타입 모호성 오류 해결
params["is_first"] = isFirst as Any

4. SPM 의존성 추가

- Mixpanel-swift 패키지 추가
- 프로젝트 설정에서 Mixpanel 타겟 의존성 등록

To Reviewers 🙏 (리뷰어에게 전달하고 싶은 말)

- 🔍 데이터 비교 검토: 두 Analytics 플랫폼의 데이터 수집 정확도를 비교해주세요
-  성능 영향: 이중 트래킹이 앱 성능에 미치는 영향을 확인해주세요
- 🔐 보안 검토: Mixpanel 토큰 관리 방식이 적절한지 확인해주세요
- 📱 테스트: 실제 이벤트가 두 플랫폼 모두에서 정상 수집되는지 검증해주세요

Reference 🔗

- https://docs.mixpanel.com/docs/tracking/how-tos/ios
- https://firebase.google.com/docs/analytics/ios/start

Close Issues 🔒 (닫을 Issue)

Close #Analytics-Tracking

Checklist

- 브랜치를 가져와 작업한 경우 이전 브랜치에 PR을 보냈는지 확인
- 빌드를 위해 SceneDelegate 수정한 것 PR로 올리지 않았는지 확인
- 필요없는 주석, 프린트문 제거했는지 확인
- 컨벤션 지켰는지 확인
- final, private 제대로 넣었는지 확인
- 다양한 디바이스에 레이아웃이 대응되는지 확인 (Analytics는 백엔드 로직이므로 해당 없음)
  - iPhone SE
  - iPhone 13
  - iPhone 13 Pro Max

### 핵심 메시지:
 Analytics 플랫폼의 데이터를 비교 분석하여 더 나은 분석 결과를 제공하는 솔루션을 최종 선택할 예정입니다. 현재는 데이터 수집 정확도와 분석 품질을 평가하는 단계입니다.

Copy link
Contributor

@minneee minneee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고하셨습니다!

Copy link
Contributor

@Peter1119 Peter1119 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

repository하나로 통합된것 좋네요
그런데 pr에 mixpanel이 왜 필요하고 어떤 점이 좋은지 어떤 목적에 의해서
선택했는지 설명이 있었다면 더 좋았을 것 같습니다.
시간 되실때 설명 한번 해주세요 ~!

@Roy-wonji Roy-wonji merged commit 0726edb into main Dec 18, 2025
@Roy-wonji Roy-wonji deleted the feature/analytics branch December 18, 2025 10:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants