Firebase 트래킹 추가
- 회원가입, 로그인
This commit is contained in:
		| @@ -82,17 +82,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate { | ||||
|     } | ||||
|      | ||||
|     private func logUtmInFirebase() { | ||||
|         let utmSource = AppState.shared.marketingUtmSource.trimmingCharacters(in: .whitespacesAndNewlines) | ||||
|         let utmMedium = AppState.shared.marketingUtmMedium.trimmingCharacters(in: .whitespacesAndNewlines) | ||||
|         let utmCampaign = AppState.shared.marketingUtmCampaign.trimmingCharacters(in: .whitespacesAndNewlines) | ||||
|          | ||||
|         if !utmSource.isEmpty && !utmMedium.isEmpty && !utmCampaign.isEmpty { | ||||
|             Analytics.logEvent("campaign_utm", parameters: [ | ||||
|                 "utm_source": utmSource, | ||||
|                 "utm_medium": utmMedium, | ||||
|                 "utm_campaign": utmCampaign | ||||
|             ]) | ||||
|         } | ||||
|         FirebaseTracking.shared.logUtm() | ||||
|     } | ||||
| } | ||||
|  | ||||
|   | ||||
							
								
								
									
										34
									
								
								SodaLive/Sources/Tracking/FirebaseTracking.swift
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								SodaLive/Sources/Tracking/FirebaseTracking.swift
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | ||||
| // | ||||
| //  FirebaseTracking.swift | ||||
| //  SodaLive | ||||
| // | ||||
| //  Created by klaus on 3/10/25. | ||||
| // | ||||
|  | ||||
| import Firebase | ||||
|  | ||||
| class FirebaseTracking { | ||||
|     static let shared = FirebaseTracking() | ||||
|      | ||||
|     func signUp(method: String) { | ||||
|         Analytics.logEvent(AnalyticsEventSignUp, parameters: [AnalyticsParameterMethod: method]) | ||||
|     } | ||||
|      | ||||
|     func login(method: String) { | ||||
|         Analytics.logEvent(AnalyticsEventLogin, parameters: [AnalyticsParameterMethod: method]) | ||||
|     } | ||||
|      | ||||
|     func logUtm() { | ||||
|         let utmSource = AppState.shared.marketingUtmSource.trimmingCharacters(in: .whitespacesAndNewlines) | ||||
|         let utmMedium = AppState.shared.marketingUtmMedium.trimmingCharacters(in: .whitespacesAndNewlines) | ||||
|         let utmCampaign = AppState.shared.marketingUtmCampaign.trimmingCharacters(in: .whitespacesAndNewlines) | ||||
|          | ||||
|         if !utmSource.isEmpty && !utmMedium.isEmpty && !utmCampaign.isEmpty { | ||||
|             Analytics.logEvent("campaign_utm", parameters: [ | ||||
|                 "utm_source": utmSource, | ||||
|                 "utm_medium": utmMedium, | ||||
|                 "utm_campaign": utmCampaign | ||||
|             ]) | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @@ -50,6 +50,7 @@ final class LoginViewModel: ObservableObject { | ||||
|                     let decoded = try jsonDecoder.decode(ApiResponse<LoginResponse>.self, from: responseData) | ||||
|                      | ||||
|                     if let data = decoded.data, decoded.success { | ||||
|                         FirebaseTracking.shared.login(method: "email") | ||||
|                         UserDefaults.set(data.profileImage, forKey: .profileImage) | ||||
|                         UserDefaults.set(data.nickname, forKey: .nickname) | ||||
|                         UserDefaults.set(data.userId, forKey: .userId) | ||||
|   | ||||
| @@ -99,6 +99,7 @@ final class SignUpViewModel: ObservableObject { | ||||
|                             let decoded = try jsonDecoder.decode(ApiResponse<LoginResponse>.self, from: responseData) | ||||
|                              | ||||
|                             if let data = decoded.data, decoded.success { | ||||
|                                 FirebaseTracking.shared.signUp(method: "email") | ||||
|                                 UserDefaults.set(data.profileImage, forKey: .profileImage) | ||||
|                                 UserDefaults.set(data.nickname, forKey: .nickname) | ||||
|                                 UserDefaults.set(data.userId, forKey: .userId) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Yu Sung
					Yu Sung