[Unity] 유니티 IAP 사용하기(인앱결제 설정)

Posted by Dev Park
2020. 2. 3. 10:51 Unity

사용 유니티 버전 : 2019.2.18f1

 

유니티에서 IAP (인앱결제)를 적용하는 방법입니다. 

예전에는 인앱결제를 만들려면 해당 코드를 작성해야 했지만 

지금은 코드리스 IAP라는 것이 생겨서 손쉽게 IAP를 적용 할 수 있게되었습니다. 

 

1. 유니티에서 In-App Purchasing 활성화 하기 

먼저 유니티 Services 에서 In-App Purchasing 을 선택합니다.

처음 Services 에 있는 항목의 사용을 선택하면 13세 이하 어린이를 대상으로 하는 앱인지에 대한 확인을 합니다. 

만들려는 앱의 성격에 맞게 체크 또는 체크 없이 Continue를 눌러줍니다.

이제 중간쯤에 있는 import 버튼을 눌러 IAP 플러그인을 설치합니다. 

Import를 누르면 설치할거냐고 묻는 창이 나오고 Install을 누르면 설치 창이 나타납니다. 

Next 클릭

Import 클릭 

Install Now 클릭

2/2 단계 - Next 클릭 

Import 클릭 후 인스톨 한번더 클릭

설치 후 인스톨러 스크립트를 지우고 닫기 클릭

 

여기까지 하면 일단 필요한 설치는 끝났습니다. 

이제 IAP 관련된 설정을 해줘야 합니다. 

 

2. IAP 설정 하기 

유니티 -> Window -> Unity IAP -> Receipt Validation Obfuscator 를 선택합니다. 

위 스샷과 같은 창이 뜨는데 2번 부분에 Public Key를 입력해줘야 합니다. 

Public Key는 구글 플레이 콘솔에서 가져와야 합니다. 

 

구글 플레이 콘솔에서 애플리케이션 만들기를 통해 인앱결제를 넣을려고 하는 앱을 만들어 줍니다. 

왼쪽 카테고리에서 서비스 및 API 를 선택 위 스샷에 붉은색 박스안에 보시면 자신의 라이센스 키가 있습니다. 

라이센스 키를 복사하여 아까 유니티의 Receipt Validation Obfuscator 에 붙여넣기 합니다.

키를 붙여넣기 한 후 Obfuscate Google Play License Key 버튼을 클릭합니다. 

 

Receipt Validation Obfuscator 창에 4번의 Open Analytics Dashboard를 클릭해서 유니티 대쉬보드로 들어갑니다.

Analytics Settings에 라이센스 키를 붙여넣고 저장

다시 유니티로 돌아와서 Sevices -> In-App Purchasing 의 Options 에 라이센스 키를 붙여넣기 한 후 Verify 클릭

위 스샷처럼 되었으면 IAP 설정은 완료되었습니다. 

 

 

3. 결제 상품 설정 및 IAP 버튼 만들기 

여기부터 진행을 하려면 구글 플레이 콘솔에 개발하려는 앱의 

스토어 등록정보, 컨텐츠 등급, 가격 및 배포에 필수 항목을 입력한 상태여야 합니다. 

 

구글 플레이 콘솔에서 인앱 상품 - > 관리되는 제품 카테고리를 선택합니다. 

관리되는 제품 만들기를 통해 인앱 상품을 만들어 줍니다. 

제품 ID는 해당 상품을 불러오는 코드입니다. 

상품의 이름과 설명을 입력하고 상태를 활성 APK 상태로 변경, 하단의 가격을 설정한 후 저장합니다. 

 

다시 유니티로 돌아와서 

Window -> Unity IAP -> IAP Catalog 를 선택합니다. 

ID에 아까 구글 플레이 콘솔에서 만든 인앱 상품의 제품 ID를 입력해 줍니다. 

만든 상품이 여러개 일 경우 Add Product 버튼을 눌러 Product 개수를 늘려 하나하나 입력해주면 됩니다. 

하단의 Automatically initialize UnityPurchasing 을 체크합니다. 

 

입력이 끝났으면 창을 닫고 

Window -> Unity IAP -> Create IAP Button 눌러 버튼을 생성합니다. 

생성한 버튼의 Inspector를 보면 IAP Button에 Product ID가 있습니다. 

선택하보면 아까 Catalog에 입력한 ID를 확인 할 수 있습니다. 

해당 상품의 구입 완료 또는 구입 실패시에 따른 처리는 

위 부분에서 처리하면 됩니다. 

 

 

유니티에서 실행 후 버튼을 눌러보면 위 그림과 같이 에디터 상태에서의 상품 구입 또는 취소를 선택할 수 있고 

구입 완료 시 처리에 대한 부분을 확인 할 수 있습니다. 

 

모바일에서는 해당 앱에 테스터로 등록되어 있는 계정으로 테스트 시 결제 화면에 테스트 결제임이 표시됩니다.