유니티 인앱결제(Unity In-App Purshasing, IAP) 구매 복원(Restore) 구현(안드로이드, iOS)
사용자가 앱을 재설치할때 이미 소유하고있는 비소모 상품 또는 구독 상품이 거래 복원되어야합니다.
https://docs.unity3d.com/Manual/UnityIAPRestoringTransactions.html
안드로이드(구글플레이)
안드로이드(구글플레이)는 첫번째 초기화 단계(OnInitialized 함수)에서 사용자의 상품(비소모 또는 구독) 구매이력을 검색하고 소유한 모든 상품을 자동으로 복원합니다. 소유한 비소모품 상품이 존재하면 자동으로 해당 상품에 대해 ProcessPurchase 함수를 호출합니다.
iOS(애플, 앱스토어)
iOS 플랫폼에서는 거래 복원을 자동으로 수행하지않으며 구매 복원을 수행할수있는 버튼을 제공해야합니다.
m_AppleExtensions = extensions.GetExtension<IAppleExtensions>();
특정 스토어의 확장 기능을 가져옵니다.
거래 복원을 수행하는 버튼과 함수를 구현합니다.함수를 호출하면 스토어에 저장된 사용자의 구매 내역을 확인하고 소유한 모든 비소모성 상품을 복원합니다.
비소모품 구매 이력이 존재하는 경우 해당 상품에 대하여 ProcessPurchase 함수가 호출되며 함수내에서 상품 구매 완료이후의 로직을 실행합니다.
거래 복원이 완료된 후 호출되는 콜백 메서드를 구현할수있습니다. 이것은 복구 프로세스가 성공 또는 실패 했다는것을 의미하며 실제 상품이 복구되었다는 것을 의미하지 않습니다.
'유니티게임개발 > 기초공부' 카테고리의 다른 글
유니티(Unity)에서 오브젝트 풀(Object Pool) 의 유용성과 사용 예시 (1) | 2024.10.11 |
---|---|
유니티(Unity) 안드로이드에서 동영상 광고(구글애드몹) 표시하면 앱 크래시 문제(Graphics device is null) (0) | 2024.10.11 |
유니티 인앱결제(Unity In-App Purshasing, IAP) 초기화 및 상품 구매 구현 (3) | 2024.10.10 |
유니티(Unity) 코드리스 인앱결제(Codeless IAP) 자동 초기화 설정(Codeless IAP) (0) | 2024.10.10 |
유니티(Unity) 얼굴인식 구현 프로젝트(keijiro, FaceMeshBarracuda) (0) | 2024.10.04 |