본문 바로가기

반응형

안드로이드

AOSP 빌드 오류 #1 https://source.android.com/docs/setup/build/building Android 빌드 | Android 오픈소스 프로젝트 | Android Open Source Project Android 빌드 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 다음 안내에 따라 Android 빌드를 시작합니다. 환경 설정 다음과 같이 envsetup.sh 스크립트로 환경을 source.android.com AOSP 빌드를 위한 환경설정, repo init, repo sync, lunch 등을 마치고 m 명령어로 빌드를 하던 도중 빌드가 실패합니다 오류 로그(hs_err_pid####.log): 더보기 # # A fatal error has been detected.. 더보기
안드로이드 에뮬레이터 저장(Snapshot)이 안 될 때 그간 어떤 에뮬레이터에서는 항상 구글 로그인이 풀려있어 귀찮게 매번 다시 로그인하고, 다른 기기에서 인증 받고 그랬는데 원인을 찾았다. https://developer.android.com/studio/run/emulator-troubleshooting#unable-create Android Emulator 및 시스템 이미지의 문제 해결 및 알려진 문제 | Android 개발자 | Android Developers Android Emulator 및 시스템 이미지의 문제 해결 및 알려진 문제 이 페이지에는 Android Emulator의 알려진 문제, 해결방법 및 문제 해결 팁이 나와 있습니다. 여기 나열되지 않은 문제가 발생하거나 여기 developer.android.com Creating a snaps.. 더보기
[후기] 안드로이드를 위한 Gradle - 안드로이드 스튜디오를 이용한 빌드 자동화 https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=87852130 안드로이드를 위한 Gradle 한빛 리얼타임 132권. 이 책은 안드로이드 개발 경험이 있는 개발자 중에서 안드로이드 스튜디오와 Gradle의 기본적인 내용을 빠르게 학습하고자 하는 독자를 대상으로 한다. 간단한 안드로이드 www.aladin.co.kr Gradle과 안드로이드 스튜디오, 멀티 프로젝트에 대한 기초를 닦을 수 있는 책. 달리 말하면 심화 내용이 별로 없다. 책이 꽤나 얇은데 Gradle 내용으로 채워지지 않고 안드로이드 스튜디오 기초 명령어나 유닛 테스트 방법 등 사족이 붙어있다. 2016년에 발간된 책으로, 당시에는 개발 환경이 이클립스에서 안드로이드 스튜디오로 옮겨가는 추세인지라.. 더보기
Unit Test(유닛 테스트) 팁 5가지 - TDD(테스트 주도 개발) static method 제한적 사용 테스트 대상이 되는 함수 내부에서 static method를 사용한다면, 해당 부분은 Mocking 할 수 없습니다. 따라서 위 테스트와 마찬가지로 실행 환경에 영향을 받는 테스트를 작성하게 됩니다. singleton 및 object 제한적 사용 싱글톤 패턴이나 코틀린의 object를 사용하는 경우, 여러 테스트를 한 번에 테스트할 때 변수를 공유하기 때문에 문제가 발생할 수 있습니다. Object 개념과 Data Structure 개념 구분하여 사용 Object는 메소드 실행을 위한 클래스를 말하며, Data Structure는 데이터 저장을 위한 클래스를 말합니다. 코틀린에서는 Data Structure를 위해 Data Class를 사용하므로 둘을 구분하기 더욱 .. 더보기
Mockito 프레임워크 - TDD(테스트 주도 개발) 2021.12.14 - [Android/TDD(Test Driven Development, 테스트 주도 개발)] - Test Double Test Double 2021.12.10 - [Android+Kotlin+Figma] - Unit Test - TDD(Test Driven Development, 테스트 주도 개발) Unit Test - TDD(Test Driven Development, 테스트 주도 개발) 사담 안드로이드 개발의 기초적인 부분을 훑.. roomedia.tistory.com Mockito 이전 포스팅까지 우리는 Test Double 클래스를 직접 작성하였습니다. Mockito 프레임워크는 이러한 클래스 작성에 필요한 노력을 줄여주는 프레임워크입니다. 이번 포스팅에서는 두 가지 방식으로 .. 더보기
Test Double(테스트 더블) - TDD(테스트 주도 개발) 2021.12.10 - [Android+Kotlin+Figma] - Unit Test - TDD(Test Driven Development, 테스트 주도 개발) Unit Test - TDD(Test Driven Development, 테스트 주도 개발) 사담 안드로이드 개발의 기초적인 부분을 훑으면서, 어느 부분에 대해 테스트를 작성해야 하는지 구분이 모호하다고 생각했습니다. 이를테면 "버튼을 누르면 다음 화면으로 넘어가는 기능"은 roomedia.tistory.com Test Double의 필요성 이전 포스팅에서 단일 클래스를 대상으로 테스트 케이스를 작성하여 Unit Testing(유닛 테스트)을 진행하는 방법에 대해 살펴보았습니다. 이 경우 가장 조심해야 하는 부분은, 적절한 대표군을 선정하여 가능.. 더보기
#Broadcast Receiver 비동기 백그라운드 작업 #doAsync #JobScheduler Broadcast Receiver가 프로세스 상태에 미치는 영향 BroadcastReceiver가 onReceive() 메서드를 코드를 실행 중일 때, 해당 수신자는 포그라운드 프로세스로 간주됩니다. 메모리가 부족하지 않은 이상 시스템은 프로세스를 계속 실행합니다. onReceive() 메서드가 반환되면 BroadcastReceiver는 비활성 상태로 전환되며, 프로세스의 우선순위는 다른 프로세스와 같아집니다. manifest에서 선언된 Static Receiver의 경우 onReceive() 반환 시 프로세스의 우선순위가 낮아지며, 리소스가 부족한 상황에서 우선순위가 높은 프로세스의 리소스 요청에 의해 이 프로세스가 종료될 수 있습니다. BroadcastReceiver가 장시간 실행되는 백그라운드 작업.. 더보기
#BroadcastReceiver 부팅 시 실행, android.intent.action.BOOT_COMPLETED 받기 BroadcastReceiver 부팅 시 실행하기 AndroidManifest.xml에 권한을 추가하고, 해당 액션을 브로드캐스트 리시버에 등록한 뒤, 앱을 삭제 후 재설치 합니다. Log.d(TAG, log) Toast.makeText(context, log, Toast.LENGTH_LONG).show() } } } } val br = MyBroadcastReceiver() 2. 인텐트 필터를 생성하고 리시버를 등록합니다. val filter = IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION).apply { addAction(Intent.ACTION_AIRPLANE_MODE_CHANGED) } registerReceiver(br, filter) 로컬 브로.. 더보기

반응형