1
1
package com.record.navigator
2
2
3
3
import android.annotation.SuppressLint
4
+ import android.content.BroadcastReceiver
5
+ import android.content.Context
6
+ import android.content.Intent
7
+ import android.content.IntentFilter
4
8
import android.content.pm.ActivityInfo
5
9
import android.os.Bundle
10
+ import android.widget.Toast
6
11
import androidx.activity.ComponentActivity
7
12
import androidx.activity.compose.setContent
8
13
import androidx.activity.enableEdgeToEdge
14
+ import androidx.activity.viewModels
9
15
import androidx.compose.foundation.isSystemInDarkTheme
10
16
import androidx.compose.foundation.layout.WindowInsets
11
17
import androidx.compose.foundation.layout.WindowInsetsSides
@@ -18,16 +24,34 @@ import androidx.compose.ui.graphics.Color
18
24
import androidx.compose.ui.graphics.toArgb
19
25
import androidx.compose.ui.platform.LocalView
20
26
import androidx.core.view.WindowCompat
27
+ import com.record.designsystem.component.snackbar.SnackBarType
21
28
import com.record.designsystem.theme.RecordyTheme
22
29
import dagger.hilt.android.AndroidEntryPoint
23
30
24
31
@AndroidEntryPoint
25
32
class MainActivity : ComponentActivity () {
33
+ private lateinit var uploadResultReceiver: BroadcastReceiver
34
+
35
+ private val viewModel by viewModels<MainViewModel >()
26
36
27
37
@SuppressLint(" SourceLockedOrientationActivity" )
28
38
override fun onCreate (savedInstanceState : Bundle ? ) {
29
39
super .onCreate(savedInstanceState)
40
+
30
41
requestedOrientation = ActivityInfo .SCREEN_ORIENTATION_PORTRAIT
42
+ uploadResultReceiver = object : BroadcastReceiver () {
43
+ override fun onReceive (context : Context ? , intent : Intent ? ) {
44
+ intent?.let {
45
+ val message = it.getStringExtra(" message" )
46
+ message?.let { msg ->
47
+ if (msg== " success" ) viewModel.onShowSnackbar(" 업로드가 완료되었습니다." ,SnackBarType .CHECK )
48
+ else viewModel.onShowSnackbar(" 업로드가 실패했습니다." ,SnackBarType .WARNING )
49
+ }
50
+ }
51
+ }
52
+ }
53
+ val filter = IntentFilter (" com.example.UPLOAD_RESULT" )
54
+ registerReceiver(uploadResultReceiver, filter)
31
55
enableEdgeToEdge()
32
56
setContent {
33
57
RecordyTheme {
0 commit comments