마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

BillingClient (인앱결제) 질문

0 추천

인앱 구현중입니다.

현재 알파버젼으로 앱 게시후 상품을 등록하였습니다.

그리고 상품결제가 성공하면 다음과같이 구현중인데 

여기서 Purchase가 List로 들어오는 이유는 뭔가요???  인앱상품 1개에 대한 구매 성공/실패가 이루어지는건데

여기가 List로 들어오는 이유를 모르겠습니다. 답변 부탁드려요 ~!!!

onPurchasesUpdated(.. List<Purchase> purchases)
@Override
            public void onPurchasesUpdated(@BillingClient.BillingResponse int responseCode, List<Purchase> purchases) {
                if (responseCode == BillingClient.BillingResponse.OK && purchases != null) {
                    //결제가 요청이 완료되면 호출되는 영역
                    for (Purchase purchase : purchases) {
                        //주문 정보 를 받아와서 처리하는 부분
                        String sku = purchase.getSku();
                        Toast.makeText(LockBuyActivity.this, "주문한 상품 sku : "+sku, Toast.LENGTH_SHORT).show();
                        Log.d(log, "purchase = " + purchase.getOrderId() + "  " + sku);

                        /*
                        다시 주문할 수 있도록 주문한 아이템의 소진을 요청한다.
                        만약, 한번 구매한 아이템을 다시 구매하지 못하게하려면 아래 consumeItem() 을 사용하지 않고
                        여기서 바로 nativeCallBackSuccessBuyItem 함수를 호출하면 된다.
                        */
//                        consumeItem(sku);
                    }
                } else if (responseCode == BillingClient.BillingResponse.USER_CANCELED) {
                    // 유저가 도중에 결제를 취소할 경우 호출되는 영역
                    Toast.makeText(LockBuyActivity.this, "결제를 취소하였습니다.", Toast.LENGTH_SHORT).show();
                } else {
                    // 예기치 못한 결제 에러가 발생 되면 호출되는 영역
                    Toast.makeText(LockBuyActivity.this, "결제 실패하였습니다.", Toast.LENGTH_SHORT).show();
                }
            }
늘순수하게 (360 포인트) 님이 2017년 11월 29일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...