
Build Analyzer 를 실행 하면 아래와 같이 팁이 나타나는데, 따라 해주면 10%의 성능 향상이 기대된다고 한다. gradle.properties 에 org.gradle.jvmargs=-Xmx2048m org.gradle.parallel=true 에서 아래 라인을 추가 -XX:+UseParallelGC 하면 org.gradle.jvmargs=-Xmx2048m -XX:+UseParallelGC org.gradle.parallel=true 요렇게 되고, Build Analyzer를 다시 실행하면 위 팁이 사라진다.

안드로이드 스튜디오 버전이 올라가면서, Gradle 버전이 7로 올라가면서 자바 11로 올려줘야 하는 문제. > Failed to apply plugin 'com.android.internal.application'. > Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8. You can try some of the following options: Mac 은 AndroidStudio > Preference Window는 File > Settings 간단하게 11로 변경만 해주면 완료 된다.
Debug 모드에서 빌드되지만 Release 모드에서 빌드하면 다음과 같은 에러가 난다면? Build Output 에러 메시지 - Attribute Signature requires InnerClasses attribute 안드로이드 스튜디어 빌드 시 gradle 파일 release 모드에서 minifyEnabled true 가 되어 있으면 난독화 정보에 대해 proguard-rules.txt 파일을 참고합니다. 이 파일에 다음과 같은 구문을 적고 다시 빌드하면 됩니다. -keepattributes InnerClasses file이 없다면 app폴더 아래에 proguard-rules.txt 생성하세요.
MutableLiveData는 Abstract Class 인 LiveData를 구현한 Public Class 위 말을 풀어 보면, 1. LiveData는 추상 클래스이므로 직접 생성할 수 없다. public abstract class LiveData { protected void postValue(T value) {} @MainThread protected void setValue(T value) {} //데이터 수정은 pretected 메서드를 구현해서 사용해야 한다. } val name : LiveData = LiveData() 위와 같이 직접 생성할 경우 아래와 같이 에러가 발생한다. cannot create an instance of an abstract class 반면에 MutableLiveDa..

위와 같이 아래 영역을 넘어가게 되어 하단에 버튼등을 고정 시킬 경우 보이지 않는 문제가 발생한다. 1. viewpager의 marginBottom="?actionBarSzie" 로 하게 될 경우 버튼은 보이지만 스크롤 할 경우 같이 올라가며 하단 빈 영역이 보이게 된다. 2. Tab과 CollapsingToolbarLayout 를 사용 할 경우 다른 레이아웃으로 감싸주면 스크롤 범위가 영역과 맞아져저 해결은 되지만, 탭의 구성이 찌그러지게 된다. 즉, CoordinatorLayout 아래 다른 레이아웃으로 감싸면 안됨. 3. 원인은 app:layout_behavior="@string/appbar_scrolling_view_behavior" 뷰 페이저의 스크롤링을 적용했기 때문에 하단으로 더 길게 스크롤..
아래 코드를 navController = Navigation.findNavController(this, R.id.fragment_navi_dashboard_host); 요렇게 바꾸어야 함 NavHostFragment navHostFragment = (NavHostFragment) getSupportFragmentManager() .findFragmentById(R.id.fragment_navi_dashboard_host); NavController navController = navHostFragment.getNavController();
벡터 문제도 아니고, xml 문제도 아니고, gradle 문제도 아니면, context 문제다. Drawable drawable = ContextCompat.getDrawable(getApplicationConetxt(), R.drawable.ic_arrow_back_white_24dp); 아래와 같이 this 로 바꿔야 한다. Drawable drawable = ContextCompat.getDrawable(this, R.drawable.ic_arrow_back_white_24dp);
Room 에서 DB 가 만들어지고, 초기화를 할 때 OnCreate() 에서 아래와 같이 워커를 불러서 작업을 하는데, val request = OnTimeWorkRequestBuilder().build() WorkManager.getInstance(context).enqueue(request) enqueue 에 작업을 넣으려고 하면 아래와 같이 요상한 에러가 난다. 아무리 인터넷을 뒤져도 답이 없다. E/AndroidRuntime: FATAL EXCEPTION: arch_disk_io_0 java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/work/impl/utils/futures/AbstractFuture; Caused by: java.l..