Skip to content

Commit cb634d0

Browse files
committed
[BOOK-256] feat: 기록 카드 GA 로그 추가 및 온보딩 GA 로그 변경 사항 반영
1 parent 3ae7508 commit cb634d0

File tree

3 files changed

+18
-2
lines changed

3 files changed

+18
-2
lines changed

feature/detail/src/main/kotlin/com/ninecraft/booket/feature/detail/card/RecordCardPresenter.kt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@ import androidx.compose.runtime.Composable
44
import androidx.compose.runtime.getValue
55
import androidx.compose.runtime.mutableStateOf
66
import androidx.compose.runtime.setValue
7+
import com.ninecraft.booket.core.common.analytics.AnalyticsHelper
78
import com.ninecraft.booket.feature.screens.RecordCardScreen
89
import com.slack.circuit.codegen.annotations.CircuitInject
910
import com.slack.circuit.retained.rememberRetained
1011
import com.slack.circuit.runtime.Navigator
1112
import com.slack.circuit.runtime.presenter.Presenter
13+
import com.slack.circuitx.effects.ImpressionEffect
1214
import dagger.assisted.Assisted
1315
import dagger.assisted.AssistedFactory
1416
import dagger.assisted.AssistedInject
@@ -17,7 +19,14 @@ import dagger.hilt.android.components.ActivityRetainedComponent
1719
class RecordCardPresenter @AssistedInject constructor(
1820
@Assisted private val screen: RecordCardScreen,
1921
@Assisted private val navigator: Navigator,
22+
private val analyticsHelper: AnalyticsHelper,
2023
) : Presenter<RecordCardUiState> {
24+
25+
companion object {
26+
private const val RECORD_CARD_SAVE = "record_card_save"
27+
private const val RECORD_CARD_SHARE = "record_card_share"
28+
}
29+
2130
@Composable
2231
override fun present(): RecordCardUiState {
2332
var isLoading by rememberRetained { mutableStateOf(false) }
@@ -45,16 +54,22 @@ class RecordCardPresenter @AssistedInject constructor(
4554

4655
is RecordCardUiEvent.SaveRecordCard -> {
4756
isCapturing = false
57+
analyticsHelper.logEvent(RECORD_CARD_SAVE)
4858
sideEffect = RecordCardSideEffect.SaveImage(event.bitmap)
4959
}
5060

5161
is RecordCardUiEvent.ShareRecordCard -> {
5262
isSharing = false
63+
analyticsHelper.logEvent(RECORD_CARD_SHARE)
5364
sideEffect = RecordCardSideEffect.ShareImage(event.bitmap)
5465
}
5566
}
5667
}
5768

69+
ImpressionEffect {
70+
analyticsHelper.logScreenView(screen.name)
71+
}
72+
5873
return RecordCardUiState(
5974
isLoading = isLoading,
6075
quote = screen.quote,

feature/screens/src/main/kotlin/com/ninecraft/booket/feature/screens/ScreenNames.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,6 @@ object ScreenNames {
1313
const val OCR = "record_OCR_camera"
1414
const val RECORD_DETAIL = "record_detail"
1515
const val BOOK_DETAIL = "library_book_detail"
16-
const val ONBOARDING = "onboarding_1_search"
16+
const val ONBOARDING = "onboarding"
17+
const val RECORD_CARD = "record_view_card"
1718
}

feature/screens/src/main/kotlin/com/ninecraft/booket/feature/screens/Screens.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,4 +77,4 @@ data class RecordCardScreen(
7777
val quote: String,
7878
val bookTitle: String,
7979
val emotionTag: String,
80-
) : ReedScreen(name = "RecordCard()")
80+
) : ReedScreen(name = ScreenNames.RECORD_CARD)

0 commit comments

Comments
 (0)