Android 크로스 스토어 설치 문제
여러 Android 앱 스토어에 배포할 때 구매 이력 손실 및 동기화 문제를 이해하고 해결합니다.
읽는 시간 1분최근 업데이트: 한 달 전
공유 Android 번들 식별자를 사용하여 여러 Android 인앱 구매 스토어(예: Google Play 스토어)에 동시에 퍼블리시하는 경우 크로스 스토어 설치 문제가 발생합니다. 이 페이지에서는 이러한 충돌의 결과와 문제를 해결하는 방법에 대해 설명합니다.
크로스 스토어 설치 시나리오는 사용자가 한 스토어(스토어 A)에서 애플리케이션을 설치한 다음 다른 스토어(스토어 B)에서 애플리케이션으로 설치를 업그레이드하는 경우입니다. 사용자의 설치를 업그레이드할 기회는 최신 애플리케이션 버전을 호스팅하는 스토어에 속합니다. 이 시나리오는 애플리케이션의 두 빌드가 동일한 Android 번들 식별자와 서명 키를 사용하는 경우에 발생할 수 있습니다.
예를 들어 가 Google Play와 다른 제조사의 앱 스토어 모두에 퍼블리시되는 경우 두 스토어가 설치된 사용자는 한 스토어에서 앱을 설치한 후 다른 스토어에서 앱을 업데이트할 수 있습니다. 이렇게 하면 IAP 구매 이력이 손실되고 사용자가 이전에 구매한 디지털 상품을 복원하지 못할 수 있습니다.
com.foo.bar크로스 스토어 설치 문제의 영향
크로스 스토어 충돌은 IAP를 사용하는 애플리케이션에서 해결할 수 없는 최종 사용자 문제를 일으킬 수 있습니다. 사용자는 설치 제거 또는 재설치 시 구매를 잃고 크로스 스토어 업그레이드에 의해 중단된 진행 중인 구매를 잃을 수 있습니다.
결과로 인한 IAP 문제는 다음과 같습니다.
문제 유형 | 설명 |
|---|---|
| 불완전한 구매 실패 | 사용자가 구매가 승인되었지만 애플리케이션이 스토어의 청구 시스템에서 구매를 수신하는 것을 확인하기 전에 업그레이드하는 경우에 발생합니다. 애플리케이션이 클라우드 인벤토리 서비스와 적시에 동기화하지 못하거나, 앱이 로컬 인벤토리 데이터베이스에 이 새로운 IAP를 저장하기 전에 크래시가 발생할 때 발생할 수 있습니다. |
| 스토어 A에서 구매 보류 | 사용자가 스토어 A에서 IAP 거래를 완료한 후 스토어 B에서 애플리케이션을 다시 설치하는 경우 발생합니다. 해당 거래를 복원할 수 없습니다. 많은 스토어는 애플리케이션이 다른 스토어의 IAP 시스템에 액세스할 수 없도록 명시적으로 허용합니다. 이 문제를 해결하려면 종속된 사용자 ID 서비스와 함께 클라우드 인벤토리 시스템을 활용합니다. |
| 다양한 IAP 상품 목록 | 스토어 B 애플리케이션의 업그레이드된 제품 리스트가 스토어 A 버전의 리스트와 다르면 발생합니다. IAP 카탈로그가 서로 다를 수 있습니다. 이로 인해 일관되지 않은 로컬 인벤토리가 스토어 B 버전에서 읽힐 때 애플리케이션 오류가 발생하거나 사용자가 이전에 구매한 인벤토리를 잃을 수 있습니다. 이 인벤토리는 스토어 B 버전에서 사용할 수 없습니다. |
크로스 스토어 설치 문제 해결
크로스 스토어 충돌을 해결하는 방법에는 두 가지가 있습니다.
- 각 스토어에 고유한 서명 키를 사용합니다. 이렇게 하면 충돌하는 스토어에서 업그레이드 오류 메시지가 표시됩니다.
- 각 스토어에 고유한 번들 식별자를 사용합니다. 이렇게 하면 사용자가 중복된 앱 설치할 수 있습니다.