# 요약 및 결론
> IAP 와 Ads 는 다음 에셋을 사용하는 것이 확실히 쉬움. 진짜로.
> - [Easy IAP (In App Purchase) v2.0 | 기능 통합 | Unity Asset Store](https://assetstore.unity.com/packages/tools/integration/easy-iap-in-app-purchase-v2-0-264594)
> - [Mobile Ads v2.0 | 기능 통합 | Unity Asset Store](https://assetstore.unity.com/packages/tools/integration/mobile-ads-v2-0-266331?aid=1011l8QY4&utm_campaign=unity_affiliate&utm_medium=affiliate&utm_source=partnerize-linkmaker)
## IAP
- [Easy IAP v2.0 - Google Play Tutorial - Unity 2023 - YouTube](https://www.youtube.com/watch?v=jfoYfiP-Hus&t=1s) : 여기 있는 거 따라하면 바로 초기 설정 및 제작 가능함.
- 너무 사용법이 쉽기 때문에, 여기서는 발생할 수 있는 TrobleShooting 에 대해 좀 더 집중적으로 설명하고자 함.
### Troubleshooting
1. IAP 가 그냥 Unity 에서부터 동작하지 않는 문제 : Platform이 PC 거나 해서 다르면 동작하지 않음. 설정한 IAP 와 맞는 플랫폼 일 때만 동작.
2. 애플에서 Product 가 Available 하지 않다고 뜨는 문제 : 보통 아래 여섯 원인 중 하나.
1. Provisioning profile에서 IAP 가 허용되어 있냐. (Capabilities 에서 확인 가능)
2. App ID 가 동일하냐.
4. ProductType.NonConsumable type 처럼, 상품 종류가 동일하냐.
5. Production AppleID가 동일하냐.
6. Test Flight 에서 테스트 했는가.
7. Apple store connect에서 Tax & Banking setup 을 모두 완수하였는가.
- 보통 7번 때문에 문제가 될 때가 많음. 비즈니스 항목 들어가서 잘 체크해야 함.
- Test Flight 에서 테스트 하는 것을 보통 권장.
- 나 같은 경우, 제품 Id 를 remove가 아닌 romove로 해서 문제가 발생할 때가.. ㅋㅋ;
3. 보통 이렇게까지 하면, 조금의 넉넉한 시간을 두고 체크했을 때 안 되는 경우 없음.
## Ads
- [Mobile Ads v2.0 - Admob + UMP SDK implementation tutorial - Unity 2023 - YouTube](https://www.youtube.com/watch?v=yTIuN-q7lDI) : Ads 도 이거 참고로 하여 진행하면 진짜 쉽게 끝남.
- 단, 여기서는 조금의 주의사항이 있긴 함. 위의 IAP 보다는 주의사항이 좀 더 많아서, 유의해서 살필 것.
### Troubleshooting
1. 현재 Unity 의 Ads Tool 에서의 기기 ID 는 따로 쓸 필요 없음. Admob 에서 - [테스트 기기 설정 - Google AdMob 고객센터](https://support.google.com/admob/answer/9691433#example) - 직접적으로 Test 기기를 설정하는 것을 지원하기 때문.
2. Admob 추가 후 Crash 가 나는 경우는 보통 App ID 등을 잘못 넣었기 때문에 발생함.
3. Admob 사용할 때, GDPR 과 IDFA 메시지를 구성하지 않으면, 오류 발생하므로, Admob 사이트에서 계정 셋팅에 있었나? 어쨌든, GDPR 구성하는 부분 작성하면 됨.
1. [android - Failed to read publisher's account configuration; please check your configured app ID. Received app ID: `ca-app-pub-3940256099942544~3347511713` - Stack Overflow](https://stackoverflow.com/questions/68457966/failed-to-read-publishers-account-configuration-please-check-your-configured-a)
4. Apple 의 경우 : "오류 2 : 출시 상에서 문제 - Tracking 정보가 있는데, Tracking 정보 수집 표시와 팝업이 없음" 이라는 심사 메시지를 받음.
1. 애플에서는 광고를 위한 추적 데이터를 수집하는 경우, 어떤 종류의 데이터를 수집하는지, 그리고 데이터를 수집해도 될지 아닐지에 대해 승인을 할 수 있음. 이 기능을 구현하기 위해선 이 링크 보면 됨 : [Gley Tutorials #6 - Adding App Tracking Transparency (IDFA) popup to Unity - iOS 14.5 - YouTube](https://www.youtube.com/watch?v=Di2EljVjGDU)
- 단, 해당 링크 내에 나와 있는 내용도 조금 문제가 있어 변형할 필요가 조금 있음. (Mac은 ATT 에 대한 승인 요청 메시지를 불러오는 것이 불가능하기 때문에, isOnMac 을 통해 예외 처리해주어야 한다거나(1), 추적을 거절한 이후 부터는 해당 창이 다시 뜨면 안 되는데, 내부적으로 이게 잘 작동하지 않을 수 있으므로 (코드 자체는 이에 대해 고려되어 있는 것으로 보임) PlayerPref 처리를 해야 한다거나 하는 등.)
- [Unity - Scripting API: iOS.Device.iosAppOnMac](https://docs.unity3d.com/2021.1/Documentation/ScriptReference/iOS.Device-iosAppOnMac.html)
5. 스토어 출시 완료 후, Admob 을 실제로 해당 어플과 연결, 승인 해주는 과정이 필요함. 이는 아래 내용을 참고하여 진행할 수 있도록 할 것.
- [앱에 app-ads.txt 파일 설정하기 - Google AdMob 고객센터](https://support.google.com/admob/answer/9363762#getstarted&zippy=%2Capp-adstxt-%ED%8C%8C%EC%9D%BC%EC%9D%98-%EC%98%88-%EB%B3%B4%EA%B8%B0)
- [구글 애드몹 - app-ads.txt 설정하는 쉬운 방법](https://juzero-space.tistory.com/264) : 보통 이거 이용하면 되겠더라. 앱스토어는 ==마케팅 URL==, 구글에서는 ==스토어 등록정보의 웹사이트==.