애플리케이션이 라이센스를 확인할시기와 빈도를 선택할 수 있으며 응답을 처리하고 서명 된 응답 데이터를 확인하고 액세스 제어를 시행하는 방법을 완전히 제어 할 수 있습니다.
에서 http://developer.android.com/guide/market/licensing/overview.html
기본적으로 개발자가 원할 때마다 그렇습니다. 가장 일반적인 확인 시간은 응용 프로그램을 처음 열 때입니다.
애플리케이션은 라이센스 서버를 직접 쿼리하지 않고 원격 IPC를 통해 Google Play 클라이언트를 호출하여 라이센스 요청을 시작합니다. 라이센스 요청에서 :
애플리케이션은 패키지 이름, 나중에 서버로부터의 응답을 유효성 검증하는 데 사용되는 nonce 및 응답을 비동기식으로 리턴 할 수있는 콜백을 제공합니다.
Google Play 클라이언트는 기기의 기본 Google 계정 사용자 이름, IMSI 및 기타 정보와 같이 사용자 및 기기에 대한 필요한 정보를 수집합니다. 그런 다음 응용 프로그램 대신 라이센스 확인 요청을 서버로 보냅니다.
Google Play 서버는 사용 가능한 모든 정보를 사용하여 요청을 평가하여 사용자의 신원을 충분한 신뢰 수준으로 설정합니다. 그런 다음 서버는 애플리케이션의 구매 레코드와 사용자 ID를 확인하고 라이센스 응답을 반환합니다. 라이센스 응답은 Google Play 클라이언트가 IPC 콜백을 통해 애플리케이션으로 반환합니다.
그래서:
- 애플리케이션, 기기 및 사용자에 대한 정보는 Google 서버로 이동합니다.
- 그런 다음 Google은 Google Play에서 애플리케이션 비용을 지불 한 사람의 목록과 귀하의 이름을 확인합니다. (Google Play에서 다운로드 한 것으로 알고있는 응용 프로그램 목록과 비교하여 응용 프로그램 이름을 확인할 수도 있습니다)
- Google Play에서 애플리케이션을 다운로드하여 비용을 지불 한 것으로 확인되면 라이센스가 있음을 다시 보내줍니다. 그렇지 않은 경우 앱에 그렇지 않다고 알려줍니다.
분명히 이것은 모두 온라인으로 이루어 지므로 오프라인 상태이면 작동하지 않습니다. 응용 프로그램을 작성 중이라면 온라인으로 접속하기 전에 온라인으로 접속하기 전에 3 번이나 오프라인으로 사용할 수있는 카운터가있어서 재생할 수없는 곳에서 발생하는 일을 막을 수 있습니다 오프라인. 물론 누군가가 카운터가 저장된 파일을 파고들 때마다 값을 사용할 때마다 값을 다시 3 번 시도 할 수 있으며 지불 할 필요는 없지만 대부분의 사용자의 기술적 역량을 넘어서는 것입니다.