묻고 답해요
130만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨Flutter로 SNS 앱 만들기
섹션8번 signOut
강의에서 signOut을 추가하여서 추가를 해보니 오류가 뜹니다. await FirebaseAuth.instance.signOut();으로 바꿨을때는 문제가 없습니다.
-
미해결[초중급편] 안드로이드 데이팅 앱 만들기(Android Kotlin)
Notification 구현시 컴파일에러
class MainActivity : AppCompatActivity() { lateinit var cardStackAdapter: CardStackAdapter lateinit var manager : CardStackLayoutManager private val TAG = "MainActivity" private val usersDataList = mutableListOf<UserDataModel>() private var userCount = 0 private val uid =FireBaseAuthUtils.getUid() private lateinit var currentUserGender : String private val REQUEST_CODE = 123 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val isTiramisuOrHigher = Build.VERSION.SDK_INT>= Build.VERSION_CODES.TIRAMISU val notificationPermission = Manifest.permission.POST_NOTIFICATIONS var hasNotificationPermission = if (isTiramisuOrHigher) ContextCompat.checkSelfPermission(this,notificationPermission) == PackageManager.PERMISSION_GRANTED else true val launcher = registerForActivityResult(ActivityResultContracts.RequestPermission()){ hasNotificationPermission = it } if(!hasNotificationPermission) { launcher.launch(notificationPermission) } val setting = findViewById<ImageView>(R.id.settingIcon) setting.setOnClickListener{ // val auth = Firebase.auth // auth.signOut() // val intent = Intent(this,SettingActivity::class.java) startActivity(intent) } val cardStackView = findViewById<CardStackView>(R.id.cardStackView) manager = CardStackLayoutManager(baseContext,object : CardStackListener{ override fun onCardDragging(direction: Direction?, ratio: Float) { } override fun onCardSwiped(direction: Direction?) { if(direction == Direction.Right){ userLikeOtherUser(uid,usersDataList[userCount].uid.toString()) } if(direction == Direction.Left){ } userCount = userCount + 1 if(userCount == usersDataList.count()){ getUserDataList(currentUserGender) Toast.makeText(this@MainActivity,"유저 리스트를 새롭게 받아옵니다.",Toast.LENGTH_SHORT).show() } } override fun onCardRewound() { } override fun onCardCanceled() { } override fun onCardAppeared(view: View?, position: Int) { } override fun onCardDisappeared(view: View?, position: Int) { } }) cardStackAdapter = CardStackAdapter(baseContext,usersDataList) cardStackView.layoutManager = manager cardStackView.adapter = cardStackAdapter // getUserDataList() getMyUserData() } private fun getMyUserData(){ val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { val data = dataSnapshot.getValue(UserDataModel::class.java) Log.d(TAG,data.toString()) currentUserGender = data?.gender.toString() getUserDataList(currentUserGender) } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w(TAG, "loadPost:onCancelled", databaseError.toException()) } } FireBaseRef.userInfoRef.child(uid).addValueEventListener(postListener) } private fun getUserDataList(currentUserGender : String){ val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { // val post = dataSnapshot.getValue<Post>() for(dataModel in dataSnapshot.children){ val user = dataModel.getValue(UserDataModel::class.java) if(!user!!.gender.toString().equals(currentUserGender)){ usersDataList.add(user!!) } } cardStackAdapter.notifyDataSetChanged() } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w(TAG, "loadPost:onCancelled", databaseError.toException()) } } FireBaseRef.userInfoRef.addValueEventListener(postListener) } private fun userLikeOtherUser(myUid : String, otherUid : String) { FireBaseRef.userLikeRef.child(myUid).child(otherUid).setValue("true") getOtherUserLikeList(otherUid) } private fun getOtherUserLikeList(otherUid : String){ val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { // 여기 리스트에서 나의 UID가 있나 확인 필요 for(dataModel in dataSnapshot.children){ val likeUserKey = dataModel.key.toString() if(likeUserKey.equals(uid)){ Toast.makeText(this@MainActivity,"매칭완료",Toast.LENGTH_SHORT).show() createNotificationChannel() sendNotification() } } } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w(TAG, "loadPost:onCancelled", databaseError.toException()) } } FireBaseRef.userLikeRef.child(otherUid).addValueEventListener(postListener) } // 알림 private fun createNotificationChannel() { // Create the NotificationChannel, but only on API 26+ because // the NotificationChannel class is not in the Support Library. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { // 채널 이름 val name = "name" val descriptionText = "description" val importance = NotificationManager.IMPORTANCE_DEFAULT val channel = NotificationChannel("TestChannel", name, importance).apply { description = descriptionText } // Register the channel with the system. val notificationManager: NotificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager notificationManager.createNotificationChannel(channel) } } private fun sendNotification(){ var builder = NotificationCompat.Builder(this, "TestChannel") .setSmallIcon(R.drawable.ic_launcher_background) .setContentTitle("My notification") .setContentText("Hello World!") .setPriority(NotificationCompat.PRIORITY_DEFAULT) .setCategory(NotificationCompat.CATEGORY_MESSAGE) with(NotificationManagerCompat.from(this)){ notify(123,builder.build()) } } }안녕하세요. 알림기능 구현하는데notify(123,builder.build()) 위 부분에서 Call requires permission which may be rejected by user: code should explicitly check to see if permission is available (with checkPermission) or explicitly handle a potential SecurityException 이런 에러가 아직도 발생하고있는데 어떻게 해결할수 있을지 자세한 답변을 부탁드려도될까요? 구글링 해봤는데 명확히 어떤코드 입력해서 컴파일에러를 지울 수 있을지 모르겠습니다. 빠른답변 부탁드리겠습니다.
-
미해결핸즈온 리액트 네이티브
FirebaseError: auth/already-initialized
안녕하세요, 8강 끝부분을 따라가고 있는 중입니다. 프로젝트에서 npm start 해놓고 expo go 어플로 실시간으로 확인하면서 작업을 진행 중인데요, 새로고침 할 때(r눌러서)는 괜찮은데, VS Code에서 저장을 해서 자동으로 리랜더링 될때마다 아래와 같은 에러 메세지가 콘솔 창에 나타납니다.[FirebaseError: Firebase: Error (auth/already-initialized).] 특별히 뭐가 안되거나 하는건 아닌데... r 눌러서 아예 앱을 새로고침하면 뜨지않습니다. 어디선가 중복으로 초기화하고있다는 뜻일까요? firebase.js 파일 코드 첨부합니다! 추가로 보여드려야 하는 다른 코드가 있다면 말씀 부탁드립니다. screen 부분은 제가 다르게 가져가고 있는데 이 외에 기능부분에 대한 것들은 강의와 동일하게 진행 중입니다. firebase.jsimport { initializeApp } from 'firebase/app'; import { firebaseConfig } from '../../env'; import { getReactNativePersistence, initializeAuth } from 'firebase/auth'; import AsyncStorage from '@react-native-async-storage/async-storage'; export const initFirebase = () => { // Initialize Firebase try { const app = initializeApp(firebaseConfig); initializeAuth(app, { persistence: getReactNativePersistence(AsyncStorage), }); return app; } catch (e) { // eslint-disable-next-line no-console console.error(e); } };
-
미해결Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)
호스팅 문제 관련 질문 있습니다.
안녕하세요!! 강의를 보며 호스팅까지 진행하였습니다. 이후 설정된 url로 이동하니 이화면으로 계속 이동이 되는데 무슨 오류가 있는건지 어려워서요.. 혹시 해결방법이 있을까요?
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
firebase 데이터 불러오기에서 날짜가 안 뜹니다..
firebase 데이터 불러오기에서 날짜가 안 떠요분명 데이터는 date, memo 따로 잘 입력이 되는데출력을 하면 아래와 같이 됩니다..혹시 뭐가 문제일까요? [입력] [출력] [Adapter 코드]package com.sunny.diet_memoimport android.view.LayoutInflaterimport android.view.Viewimport android.view.ViewGroupimport android.widget.BaseAdapterimport android.widget.TextViewclass ListViewAdapter(val List : MutableList<DataModel>) : BaseAdapter(){override fun getCount(): Int {return List.size }override fun getItem(position: Int): Any {return List[position]}override fun getItemId(position: Int): Long {return position.toLong()}override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View {var convertView =convertViewif(convertView == null){convertView = LayoutInflater.from(parent?.context).inflate(R.layout.listview_item, parent, false)}val date = convertView?.findViewById<TextView>(R.id. listViewDateArea)val memo = convertView?.findViewById<TextView>(R.id. listViewMemoArea)date!!.text = List[position].date date!!.text = List[position].memo return convertView!!}}
-
해결됨Flutter로 SNS 앱 만들기
섹션 8 게시물 사라짐, 유저 정보 가져오기 X
강사님 강의 잘 듣고 있습니다. logger.d를 사용해서 파이어베이스에 feeds를 등록한 이후 갑자기 게시물에 있는 내용들이 다 사라졌습니다. 파이어베이스에서는 게시물이 존재하는데 스크린으로는 다 사라졌습니다. 게시물을 등록한 족족히 새로고침을 하면 다 사라집니다. 그리고 유저 정보도 안 가져와 집니다..
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
onBackPressed 강의와 다르게 동작합니다
package com.sowon.backbuttonex import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.widget.Toast class MainActivity : AppCompatActivity() { private var isDouble = false override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } override fun onBackPressed(){ super.onBackPressed() Log.d("MainActivity", "backbutton") if(isDouble == true){ finish() } isDouble = true Toast.makeText(this, "종료할거면 더블 클릭!", Toast.LENGTH_LONG).show() android.os.Handler().postDelayed(Runnable { isDouble = false }, 2000) } }강의 보면서 위와 같이 코드를 작성했는데 강의에서는 뒤로가기 버튼을 2초 내에 2번 눌러야 메인화면이 나오는데 저는 한번만 눌러도 메인화면이 나옵니다..!
-
해결됨Flutter로 SNS 앱 만들기
섹션6 게시글등록화면_Firebase Storage에 게시글 이미지 저장
섹션6 게시글등록화면_Firebase Storage에 게시글 이미지 저장 에서 에러가 발생 되었습니다.FeedState는 import하니 없어졌구요.StreamProvider는 어떻게 해야할지요.멜 보냈습니다.
-
해결됨[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
섹션 5 - 북마크 탭 만들기부분에 랜더링이 안됩니다
2024-03-23 10:28:11.256 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I ViewPostIme pointer 02024-03-23 10:28:11.275 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I onDisplayChanged oldDisplayState=2 newDisplayState=22024-03-23 10:28:11.388 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I ViewPostIme pointer 12024-03-23 10:28:11.403 21448-21448 WindowOnBackDispatcher com.dk.mylivealonelife W OnBackInvokedCallback is not enabled for the application. Set 'android:enableOnBackInvokedCallback="true"' in the application manifest.2024-03-23 10:28:11.456 21448-21448 BLASTBufferQueue_Java com.dk.mylivealonelife I update, w= 1080 h= 2340 mName = ViewRootImpl@6687397[MainActivity] mNativeObject= 0xb400007915241710 sc.mNativeObject= 0xb4000077b5238810 format= -1 caller= android.view.ViewRootImpl.updateBlastSurfaceIfNeeded:2968 android.view.ViewRootImpl.relayoutWindow:9998 android.view.ViewRootImpl.performTraversals:4056 android.view.ViewRootImpl.doTraversal:3239 android.view.ViewRootImpl$TraversalRunnable.run:11197 android.view.Choreographer$CallbackRecord.run:1650 2024-03-23 10:28:11.456 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I Relayout returned: old=(0,0,1080,2340) new=(0,0,1080,2340) req=(1080,2340)0 dur=1 res=0x0 s={true 0xb400007865290520} ch=false seqId=02024-03-23 10:28:11.460 21448-21509 ViewRootIm...nActivity] com.dk.mylivealonelife I mWNT: t=0xb4000077d52539d0 mBlastBufferQueue=0xb400007915241710 fn= 2 caller= android.view.ViewRootImpl$6.onFrameDraw:5539 android.view.ViewRootImpl$2.onFrameDraw:2103 android.view.ThreadedRenderer$1.onFrameDraw:788 2024-03-23 10:28:11.461 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I registerCallbackForPendingTransactions2024-03-23 10:28:11.511 21448-21778 TrafficStats com.dk.mylivealonelife D tagSocket(108) with statsTag=0xffffffff, statsUid=-12024-03-23 10:28:12.351 21448-21448 BookmarkFragment com.dk.mylivealonelife E DataSnapshot { key = -NtZSdcbSItwNWK2vCbE, value = {bookmarkIsTure=true} }2024-03-23 10:28:12.352 21448-21448 BookmarkFragment com.dk.mylivealonelife E DataSnapshot { key = -NtZSdcg99SS483hV45y, value = {bookmarkIsTure=true} }2024-03-23 10:28:12.352 21448-21448 BookmarkFragment com.dk.mylivealonelife E DataSnapshot { key = -NtZV1bPRolzlfUx3tLj, value = {bookmarkIsTure=true} }2024-03-23 10:28:12.352 21448-21448 BookmarkFragment com.dk.mylivealonelife E DataSnapshot { key = -NtZV1bS1QRxpkI6E6GN, value = {bookmarkIsTure=true} } 이건 로그파일이구요 로그는 찍히는데 화면에 랜더링이 안되네요 이것저것 열심히 찾아봐도 안되서 파일도 같이 첨부합니다.https://drive.google.com/file/d/1VUq5si9BXmxutF1Q1C7E9CzHVVN5sP79/view?usp=sharing
-
미해결Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)
안녕하세요!
안녕하세요~좋아요 수, 북마크 수, 댓글 수 카운팅 강의들으면서firebase emulator 실행하려고 하는데이 오류가 발생하며 계속 시작이 안되는데 어떻게 해결해야할지 모르겠습니다 ~~!이미지가 잘보이지 않는거 같아 코드 복사해서 첨부 합니다! --오류 코드 i emulators: Starting emulators: auth, functions, firestore, hosting, storage! functions: The following emulators are not running, calls to these services from the Functions emulator will affect production: database, pubsubi firestore: Firestore Emulator logging to firestore-debug.log+ firestore: Firestore Emulator UI websocket is running on 9150.! firestore: Fatal error occurred: Firestore Emulator has exited with code: 3221225786, stopping all running emulatorsi functions: Stopping Functions Emulatori firestore: Stopping Firestore Emulatori auth: Stopping Authentication Emulatori eventarc: Stopping Eventarc Emulatori hub: Stopping emulator hub
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
데이터베이스에있는 북마크 정보 불러오기 강의 질문
안녕하세요. 좋은강의 정말 잘 보고있습니다. 항상 감사합니다. 질문이 있는데 Bookmark 액티비티에서 북마크 정보 불러올때 override fun onDataChange(snapshot : DataSnapshot){~~for ~~rvAdapter.notifyDataSetChanged() }위처럼 for문 다 돌면 rvAdapter를 동기화 시켜주는 코드를 쓰는데 저 코드가 실행되면 제일 onCreate함수가 다시 불리는건가요??아니면 val rvAdpater = RVAdapter(contentModels,baseContext)recyclerView.adapter = rvAdapter 요 부분만 다시 불리는건가요?? rvAdapter.notifyDataSetChanged() 이 함수에 대해 조금 더 자세한 설명을 부탁드리겠습니다.
-
미해결[초중급편] 안드로이드 데이팅 앱 만들기(Android Kotlin)
말씀하신대로 다 해봤는데도 안되서 질문합니다.
섹션 7. 유저가 직접 푸시 메세지 보내기(FCM) - 라이브러리 추가, Firebase Service에서 메세지 받기 부분까지 잘 됐는데Retrofit 사용해보기 ~ Invalid 캐시 삭제 까지 따라해봤는데도 "다른 사람에게 PUSH 날리기" 부분이 안되서 파일 남깁니다.혹시나 API키를 잘못 입력했나 싶어서 API키도 포함해서 메일로 보내드렸는데 확인하고 답장부탁드려요!(메일 명 : "다른 사람에게 PUSH 날리기" 에러 프로젝트 압축파일)
-
해결됨Flutter로 SNS 앱 만들기
두번째 명령어 입력 시 오류
이렇게 뜬 다음 플랫폼 선택하는 창이 떴는데 뭐가 문제인건가요?해당 문구 출력하고 플랫폼 선택하는 화면은 나오긴 합니다만찝찝해서 질문 남깁니다.어떻게 해결해야 하나요?(참고로 저도 전에 질문 남기신 분처럼 flutterfire 오류가 나왔더라고요.그래서 답변 남겨주신대로 경로 넣어서 다시 입력했더니저렇게 나왔습니다.)
-
해결됨[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
섹션 3 - Navigation 구현 - 1 에서 발생한 에러
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.dk.mylivealonelife/com.dk.mylivealonelife.MainActivity}: android.view.InflateException: Binary XML file line #50 in com.dk.mylivealonelife:layout/actvity_main: Binary XML file line #50 in com.dk.mylivealonelife:layout/actvity_main: Error inflating class androidx.fragment.app.FragmentContainerViewCaused by: android.view.InflateException: Binary XML file line #50 in com.dk.mylivealonelife:layout/actvity_main: Binary XML file line #50 in com.dk.mylivealonelife:layout/actvity_main: Error inflating class androidx.fragment.app.FragmentContainerViewCaused by: android.view.InflateException: Binary XML file line #50 in com.dk.mylivealonelife:layout/actvity_main: Error inflating class androidx.fragment.app.FragmentContainerView2024-03-19 09:56:32.052 27206-27206 AndroidRuntime com.dk.mylivealonelife E Caused by: java.lang.UnsupportedOperationException: FragmentContainerView must be within a FragmentActivity to use android:name="androidx.navigation.fragment.NavHostFragment" Navigation 의존성추가한뒤로 mainActivity 접속시 튕기면서 이런 오류가 나옵니다.열심히 구글링 해봤는데 에러 핸들링이 안되네요 ㅠㅠ구글 드라이브 링크 입니다.https://drive.google.com/file/d/133chRQy9tldO-_9C9t4SCg8IB79J8kvw/view?usp=sharing
-
해결됨[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
doc id와 uid
firestore database에서 users의 doc id를 uid값과 동일한 값으로 입력할 수 있나요? 데이터 구조를 그렇게 만들어도 무방한가요?
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
새로 LinearLayout을 하고 강의와 같이 ImageView를 작성했는데 사진이 뜨지를 않습니다.
새로 LinearLayout을 하고 강의를 따라서 ImageView를 작성했는데 사진이 뜨지를 않습니다. 어디가 오류인지 잘 모르겠습니다ㅠㅠres/drawable 하위에 이미지 파일은 다 넣었습니다. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#5D985D" tools:context=".MainActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="200dp" android:layout_marginTop="100dp"> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:textSize="30sp" android:textColor="@color/black" android:layout_margin="20dp" android:gravity="center" android:textStyle="bold" android:text="인생은 주사위 한방"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="200dp"> <ImageView android:src="@drawable/dice_1" android:layout_width="120dp" android:layout_height="120dp"/> <ImageView android:src="@drawable/dice_2" android:layout_width="120dp" android:layout_height="120dp"/> </LinearLayout> </LinearLayout>
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
프로젝트 구조가 다릅니다
안녕하세요. 좋은 강의 감사합니다. 안드로이드 스튜디오 최신버전 받고 Empty Activity로 Bts프로젝트 처음 생성해봤는데 저는 res - layout - activity_main.xml이 아니고 아래와 같은 구성인데 어떻게 해야하나요??처음 프로젝트 생성할때도 SDK차이가 너무 많이 나기도 합니다 지금은 API24네요 빠른 답변 부탁드리겠습니다!
-
해결됨[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
실제 폰에서 테스트 시 리뷰 작성 버튼 위치
강사님.. 안녕하세요?좋은 강의 제공해 주셔서 감사드립니다.다름이 아니라 버그까진 아니지만, 실제 폰에 설치를 해서 테스트 해 보니리뷰 작성시에 내용을 쓰고 저장하기 버튼을 클릭할 수 없는 상황이 되더라고요.키보드가 내려오든가 입력 텍스트 박스를 줄이던가, 버튼이 누를 수 있게 올라가든가 하는 부분이 필요하지 않을까 생각됩니다.
-
해결됨[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
예제 앱 만들기 - 1 에서 막히는 부분이 있습니다.
FATAL EXCEPTION: main Process: com.dk.myapplication, PID: 3250 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.dk.myapplication/com.dk.myapplication.MainActivity}: java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.dk.myapplication. Make sure to call FirebaseApp.initializeApp(Context) first. at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4164) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4322) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:139) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:96) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2685) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loopOnce(Looper.java:230) at android.os.Looper.loop(Looper.java:319) at android.app.ActivityThread.main(ActivityThread.java:8893) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:608) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103) Caused by: java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.dk.myapplication. Make sure to call FirebaseApp.initializeApp(Context) first. at com.google.firebase.FirebaseApp.getInstance(FirebaseApp.java:179) at com.google.firebase.auth.FirebaseAuth.getInstance(com.google.firebase:firebase-auth@@22.3.1:283) at com.google.firebase.auth.ktx.AuthKt.getAuth(com.google.firebase:firebase-auth@@22.3.1:8) at com.dk.myapplication.MainActivity.onCreate(MainActivity.kt:18) at android.app.Activity.performCreate(Activity.java:8944) at android.app.Activity.performCreate(Activity.java:8913) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1456) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4146) 이런 오류가 나오면서 앱을 강제 종료 시킵니다 ㅠㅠ해당 프로젝트 파일입니다! https://drive.google.com/file/d/1jD3oEdj2VTKqFCg4GyGs-ax2DB28uif7/view?usp=drive_link
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
Handler에 대해 이해가 잘 되지 않아요!
혹시 자세한 설명 해주실 수 있나요? 다른 이벤트를 실행하기 위해 사용하는 것이 handler인가요? 제가 찾아본 것은 다른 백그라운드 ui를 main ui로 실행하기 위해 필요한 것이라는데 이해가 잘 되지않네요 ㅠㅠ