안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요 도움좀 부탁 드려요.
인앱 결제 처리 할때...
public void onPurchaseStateChange(PurchaseState purchaseState, String itemId,
int quantity, long purchaseTime, String developerPayload) {
.......
if (purchaseState == PurchaseState.PURCHASED) {
(결제 신청하면 실행될 부분 여기...)
에 실행할 부분을 작성하여 데이터베이스에 저장을 하고...
앱을 지웠다가 설치하면 .... 저장정보 데이터베이스 파일이 지워진 상태가 되어....
결제를 다시 신청 하게 되는데요.
결제를 다시 신청 했을때... 이미 결제가 되어 있으니...
위의 결제 신청시 실행될 부분이 실행되지가 않아요....
"이미 결제 신청 되었거나 결제 되었습니다. "
이런말이 뜨던데..
이때...
purchaseState == 어떻게 되는지 혹시 아시는분 게신가요?
며칠째 검색하고 있는데.... 도저히 답이 안나와요 .
도움 부탁 드립니다. ^^
- 인앱,
- 결제,
- purchaseState,
- 도와 주세요.
음..정확히 어떤 질문인지 모르겠지만 앱을 지웠다가 다시 실행했을 경우 RESTORE_TRANSACTIONS 메세지로 결제 정보를 복원해야 하는 것으로 알고 있습니다. 그럼 JSON 데이터에 purcharseState에 결제성공(아직 결제중), 결제 취소, 환불, 결제 만료등의 코드가 들어있는데요 ..인앱을 개발자 콘솔페이지에서 등록하려 할때 manage, unmanage(철자가 기억이 안나네요;;) 의 여부를 체크 할 수 있는데 인앱 상품이 unmanage라면 이미 결제된 상품이라도 다시 결제하려 하면 결제가 되버리고 ...manage한 상품이라면 위에 작성하신 "이미 결제 신청 되었거나 결제 되었습니다. " 라는 다이얼로그가 뜨는 것으로 알고 있습니다. manage한 상품이 결제된 상품인지 확인하려면 RESTORE_TRANSACTIONS 메세지로 결제정보를 복원하면 될것 같습니다.
도움이 되셨으면 좋겠네요..