MakePurchageFragment에서 인앱 구매를 하였을 때를 따라가본다.
MakePurchageFragment.kt
1> 구매를 위한 SkuDetail 어뎁터를 생성하고 Click 이벤트를 오버라이드하여 정의한다.
2> 이를 RecyclerView에 각각 붙여준다.
3> BillingViewMdoel을 뷰모델을 인스턴스 하고 inappSkuDetailsListLiveData, subsSkuDetailsListLiveData를옵저빙한뒤리스트가갱신되면 setSkuDetailsList메소드를동작시켜 업데이트해준다
4> 구매 버튼을 눌렀을때의 동작은 onPurchase 메소드 안에 있은 makePurchase에 의해 동작하며 이를 따라가본다
BillingViewModel.kt
* 이 BillingViewModel이 얼마나 작고 단순한 지 주목하세요 !!
* 이 아름다운 단순함은 모든 노력을 [BillingRepository] 내부에 묻고(bury) [BillingRepository] 내부에만 묻어 둔 결과입니다.
나머지 앱은 이제 [BillingClient] tentacles에서 자유롭습니다!
그리고 이 [BillingViewModel]은 나머지 Android 팀이 결제에 대해 알아야 할 유일한 개체입니다.
위에서 makePurchase를 동작시키면,
가 호출된다.
playStoreBillingClient.launchBillingFlow(activity, purchaseParams) 가 동작하면서 결제가 시작된다.
'Android Dev > Google Billing API' 카테고리의 다른 글
구글 결제 시스템 Billing API 설계 절차(3) - TrivialDriveKotlin 분석 - BillingRepository.kt (0) | 2020.12.27 |
---|---|
구글 결제 시스템 Billing API 설계 절차(2) (0) | 2020.12.21 |
구글 결제 시스템 Billing API 설계 절차(1) (0) | 2020.12.21 |