[Learning] Github Action 테스트
CICD에 무지했던 어린(어리지않은) 내 시절.. 이 블로그는 어떻게 활용할까 싶죠ㅇㅅaㅇ ~;; 사용을 하게 될지 말지 모르겠음 일단 테스트 포스팅 하나 남깁니데이
CICD에 무지했던 어린(어리지않은) 내 시절.. 이 블로그는 어떻게 활용할까 싶죠ㅇㅅaㅇ ~;; 사용을 하게 될지 말지 모르겠음 일단 테스트 포스팅 하나 남깁니데이
Jetpack- ViewModel, DataBinding ViewModel ViewModel- Explanations 안드로이드의 액티비티 생명주기에서 분리시켜, 액티비티가 재실행되어도 데이터가 소멸되지 않도록 함 액티비티가 파괴되면 ViewModel 자원도 자연히 소멸됨 ...
Thread & Coroutines Thread 안드로이드 UI 스레드 안드로이드의 UI 스레드 == 메인 스레드 다른 스레드에서 UI 관련 작업을 수행하려면, 메인 스레드로 메시지를 전송해야 함 Looper 메시지 큐에서 대기하고 있는 메시지...
ContentProvider ContentProvider 동작 원리 ContentResolver에서 아래 메소드들 중 하나를 호출하면 , ContentResolver가 ContentProvider에게 해당 기능을 수행하라고 알려줌 query(): ...
Fragment Fragment 생명주기 onAttach() 프래그먼트가 액티비티에 붙을 때 호출됨 onCreate() 프래그먼트가 액티비티의 호출을 받아 생성되는 단계 받을 arguments들이 있다면 이 단계에서 값을 세팅 onCreateView(...
Intent 명시적 인텐트 실행하고자 하는 컴포넌트 이름과 클래스명이 명시적으로 작성되어 호출할 대상을 확실히 알 수 있는 경우에 사용 val intent = Intent(this, NextActivity::class.java) intent.putExtra("Key", "MainActiviy에서 명시적 인텐트 전달") startAc...
BroadcastReceiver 등록 방식에 따른 종류 정적 리시버 AndroidManifest.xml 파일에 등록되며 라이프 사이클과 무관하게 동작 앱이 설치되면 즉시 사용 가능하며 등록과 해지가 자유롭지 못함 동적 리시버 Activity와 같은 컴포넌트에서 프로그래...
Android Service & Notification Android Service 서비스의 특징 액티비티의 생명주기에 종속되어 있지 않음 호스팅 프로세스의 메인 스레드에서 작동 액티비티가 비활성화되면 액티비티보다 우선순위가 높음 startService vs b...
안드로이드 UI(View) Event // 1. anonymous nested class로 event handler 구현 binding.eventBtn.setOnClickListener( object: View.OnClickListener { // SAM override fun onClick(v: View) { Toas...
개발 환경 설정 앱의 폴더와 파일 구조 AndroidManifest.xml MainActivity.java res: 앱의 모든 리소스 파일들이 위치 res/drawable res/layout res/mipmap res/values AndroidManifes...