목록안드로이드(Android)/이슈 및 해결 (28)
Simple&Natural
최근 사내 인앱결제 기능 개발 중 유용한 도구를 발견했다구글에서 제공하는 PlayBillngLab 을 이용하면국가변경, 신규 프로모션, 구독금액 변경 등의 테스트 케이스를 실험해 볼 수 있다.해외에 출시하는 앱이라 실제로 해외에서 결제 시 어떤 식으로 노출되는지 테스트가 필요했는데 실제 결제수단을 등록하지 않고도 테스트 가능한 방법을 찾고 있었다.아무리 검색을 해도 나오지 않아서 방황하던 중 공식문서에서 우연히 발견.공식문서 내에서 Manifest에 metadata를 설정해주는 부분이 있는데 여기서 largest release audience 태그 설정할 때 주의하자. 이건 실제 출시되는 aab나 apk의 업로드 가능 스코프를 지정하는 거고 enableBillingOverridesTesting에 종속되는..
9/1 내용 업데이트 저장된 Scheme json 파일이 버전별로 모두 동일한 것이 이슈인 것으로 보인다. 때문에 Migration 시 스키마 변경사항을 인지하지 못해 쿼리를 생성하지 않는 이슈인 것 같다. 근데 분명 테이블을 추가했는데 스키마 파일이 동일한 것도 의문이다. 계속 분석해봐야겠다. 기존의 Room은 version=2 인 상황에서 새 테이블을 추가하여 version=3으로 마이그레이션 해야 하는 상황이었다. 1 to 2 의 경우에는 수동으로 마이그레이션을 해주었지만 이번에 간단한 테이블 추가라 AutoMigration을 이용한 상황. 실행을 해보면 아래와 같은 로그만 반복된다. expected: TableInfo{name='recentSearchQueries', columns={query=C..
일반적인 MVVM 패턴에서 ViewModel을 편리하게 사용할 수 있도록 Android는 자체적으로 ViewModel 관련 컴포넌트들을 제공하고 있다. 이때, ViewModel은 생명주기를 가지는데 이는 처음 생성할 때 지정했던 ViewModelStoreOwner에 따라 달라진다. 다음 코드를 보자. override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) viewModel = ViewModelProvider( this, MyCommunityListViewModel.Factory( requireAppContainer().communityRepository, requireAppContainer().setti..
cannot access class 'android.support.v4.view.pageradapter' 오류 해결 방법 UltraViewPager라는 외부 라이브러리를 사용하던 도중 다음과 같은 호환성 이슈를 마주하게 되었다. androidx의 PagerAdapter를 구현한 Adapter를 Support.v4의 PagerAdapter를 사용하는 UltraViewPager에 넣어주려고 하였으나 호환이 되지 않는다. 공식문서에 무언가 힌트가 있는지 찾아보자 android.enableJetifier=true를 이용해 기존 타사 라이브러리를 자동으로 이전할 수 있다고 한다. 그럼 내 프로젝트의 gradle.properties를 살펴보자. 응? 해당 flag가 없다. 아래와 같이 한 줄을 추가하고 다시 syn..