본문 바로가기

Android

AppUpdateManager

참고
 
  1. https://developer.android.com/guide/app-bundle/in-app-updates
  2. https://proandroiddev.com/android-in-app-updates-common-pitfalls-and-some-good-patterns-9024988bbbe8
 
언제 나왔는지도 몰랐다가 오늘 뒤적거리니 보이는 AppUpdateManager 되시겠다. 
일단 사용하기 위해서는 min level 21 은 되어야 하며 Play Core Library 1.5.0 이상을 사용해야 된다고 한다. 
 
초기에 업데이트 확인을 위해 웹크롤링을 이용했다가 플레이 구글 사이트 개편 이후 =_ = 이를 서버로 옮기곤 손 떼고 있었는데 다시 보니 정식으로 지원하는 API 가 존재하는 걸 보는데 왠지 iOS 에는 진작에 있던걸 느즈막히 지원해주는 것 같아 =_ = 심히 불만이다. 
 
일단 사용을 위해 play core 를 추가해보니 최신 버전은 1.6.4 이며 (2020년 1월 기준) 이를 아래와 같이 추가했고 
 
implementation "com.google.android.play:core:1.6.4"
 
 
이걸 ViewModel 화 시켜서 동작 시켜도 되려나?
 
잠시 뒤적 거리는 클래스 정보들
 

 
AppUpdateManagerFactory
    .create(context: Context)
 

 
AppUpdateManager
    .registerListener(InstallStateUpdatedListener listener)
    .unregisterListener(InstallStateUpdatedListener listener)
    .startUpdateFlowForResult(AppUpdateInfo appUpdateInfo, int appUpdateType,
                              IntentSenderForResultStarter starter, int requestCode)
 
보통의 샘플은 startUpdateFlowForResult 의 3번째 인자를 Activity 를 이용하는데 IntentSenderForResultStarter 를 사용한다면? 되려나? 왠지 궁금하네?
 
오늘에서야 느낀건데 구글 문서를 아직 java 기반이네? 갑자기 문서 복붙하니 느끼는 =_=ㅋ