PC용 Google Play 게임즈는 Play Integrity API와 더불어 게임이 조작되지 않았으며, 신뢰할 수 없는 출처에서 설치된 것이 아님을 확인할 수 있는 다른 여러 Google Play 기능을 통해 무결성 보호를 지원합니다.
Play Integrity API
Play Integrity API를 사용하면 잠재적으로 위험하고 허위일 가능성이 있는 상호작용으로부터 게임을 보호할 수 있습니다. 이 API를 사용하면 사기, 속임수, 무단 액세스와 같은 공격 및 악용을 줄일 수 있습니다. Play Integrity API는 SafetyNet Attestation API(SNAA)와 Play App Licencing API를 대체합니다.
SNAA는 PC용 Google Play 게임즈에서 작동하지 않습니다.
기기 무결성 필드
deviceRecognitionVerdict 필드에는 기기가 앱 무결성을 얼마나 잘 시행할 수 있는지 나타내는 단일 값 deviceRecognitionVerdict가 포함됩니다. 기본적으로 deviceRecognitionVerdict는 다음 값 중 하나를 보유할 수 있습니다.
MEETS_DEVICE_INTEGRITY: 앱이 Google Play 서비스가 설치된 Android 지원 기기에서 실행 중입니다. 기기는 시스템 무결성 검사를 통과하고 Android 호환성 요구사항을 충족합니다.
MEETS_VIRTUAL_INTEGRITY: 앱이 Google Play 서비스가 설치된 가상 Android 환경에서 실행 중이며 현재 PC용 Google Play 게임즈로 제한됩니다. 환경은 핵심 Android 호환성 요구사항을 충족하고 Google Play 무결성 검사를 통과합니다.
없음(예: 빈 값): 앱이 공격(예: API 후킹)이나 시스템 손상(예: 루팅됨) 징후가 있는 기기에서 실행 중이거나 Google Play 무결성 검사를 통과하지 못한, 실제 기기가 아닌 기기(예: 에뮬레이터)에서 실행 중입니다.
Play Integrity API는 deviceRecognitionVerdict 값 MEETS_VIRTUAL_INTEGRITY를 사용하여 게임이 PC용 Google Play 게임즈에서 실행 중임을 나타냅니다. 다음은 Play Integrity API의 통과 응답 예입니다.
deviceIntegrity:{// "MEETS_VIRTUAL_INTEGRITY" indicates the game is running on Google Play Games on PCdeviceRecognitionVerdict:["MEETS_VIRTUAL_INTEGRITY"]}
모바일과 PC용 Google Play 게임즈에서 모두 크로스 플랫폼 게임을 사용할 수 있다면 유효성 검사 로직에서 MEETS_VIRTUAL_INTEGRITY와 MEETS_DEVICE_INTEGRITY를 모두 확인해야 합니다.
자동 보호
Google Play의 자동 보호는 게임을 무단 재배포 및 불법 복제로부터 보호하는 데 도움이 되는 서비스입니다. 사용자가 알 수 없는 배포 채널에서 보호된 앱을 다운로드하면 Google Play에서 공식 앱을 다운로드하라는 메시지가 표시됩니다. 자동 보호 기능은 데이터 연결 없이도 앱에서 작동합니다. Play Console에서 클릭 한 번으로 사용 설정할 수 있습니다. 아울러 테스트하기 전에 개발자의 작업이 필요하지 않으며 백엔드 서버 통합도 필요하지 않습니다. 자동 보호 기능을 사용하면 게임에 다음 기능을 추가할 수 있습니다.
설치 프로그램 검사: 자동 보호 기능은 앱이 열릴 때 런타임에 실행되는 Google Play 설치 프로그램 검사를 앱 코드에 추가할 수 있습니다. 설치 프로그램 검사를 통과하지 못하면 사용자에게 Google Play에서 앱을 다운로드하라는 메시지가 표시됩니다.
조작 방지 보호(이 기능은 일부 Play 파트너에게만 제공됨):
자동 보호는 앱 코드에 런타임 검사를 추가하여 수정을 감지하며, 고급 난독화 기술을 사용하여 검사가 삭제되거나 리버스 엔지니어링되는 것을 방지할 수 있습니다. 검사를 통과하지 못하면 사용자에게 Google Play에서 앱을 다운로드하라는 메시지가 표시되거나 앱이 실행되지 않습니다.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# Integrity protection for Google Play Games on PC\n\nGoogle Play Games on PC supports integrity protection through the Play\nIntegrity API and several other Google Play features to help ensure that\nyour game hasn't been tampered with or installed from an untrustworthy source.\n\nPlay Integrity API\n------------------\n\nThe [Play Integrity API](/google/play/integrity) helps protect your\ngames from potentially risky and fraudulent interactions. The API\nenables you to reduce attacks and abuse such as\nfraud, cheating, and unauthorized access. The\n[Play Integrity API](/google/play/integrity) replaces the\nSafetyNet Attestation API (SNAA) and Play App Licencing API.\nSNAA does not work with Google Play Games on PC.\n\n### Device Integrity Field\n\nThe\n[`deviceRecognitionVerdict`](/google/play/integrity/verdict#device-integrity-field)\nfield contains a single value, `deviceRecognitionVerdict`,\nthat represents how well a device can enforce app integrity. By default,\n`deviceRecognitionVerdict` can have one of these values:\n\n- `MEETS_DEVICE_INTEGRITY`: The app is running on an Android-powered device with Google Play services. The device passes system integrity checks and meets Android compatibility requirements.\n- `MEETS_VIRTUAL_INTEGRITY`: The app is running in a virtual Android environment with Google Play services, currently limited to Google Play Games on PC. The environment meets core Android compatibility requirements and passes Google Play integrity checks.\n- None (a blank value): The app is running on a device that has signs of attack (such as API hooking) or system compromise (such as being rooted), or the app is running on a non-physical device (such as an emulator) that does not pass Google Play integrity checks.\n\nThe Play Integrity API uses the `deviceRecognitionVerdict` value\n`MEETS_VIRTUAL_INTEGRITY` to indicate that the game is running on Google Play Games on PC. Here's an example of a passing response from\nthe Play Integrity API: \n\n deviceIntegrity: {\n // \"MEETS_VIRTUAL_INTEGRITY\" indicates the game is running on Google Play Games on PC\n deviceRecognitionVerdict: [\"MEETS_VIRTUAL_INTEGRITY\"]\n }\n\nIf you have a cross-platform game available on both mobile and\nGoogle Play Games on PC, make sure your\nvalidation logic checks for both `MEETS_VIRTUAL_INTEGRITY` and\n`MEETS_DEVICE_INTEGRITY`.\n\nAutomatic protection\n--------------------\n\nGoogle Play's [automatic protection](https://support.google.com/googleplay/android-developer/answer/10183279) is a service\nthat helps you protect your game against unauthorized redistribution and\npiracy. When users get your protected app from an unknown distribution\nchannel, they'll be prompted to get your official app from\nGoogle Play. Automatic protection works in your app without a data\nconnection. It can be turned on with one click in the\nPlay Console, and requires no developer work before testing and no\nbackend server integration. Automatic protection can add the following\nfeatures to your game:\n\n- **Installer checks**: Automatic protection can add Google Play installer checks to your app's code that happen at runtime when your app is opened. If the installer checks fail, users will be prompted to get your app on Google Play.\n- **Anti-tamper protection** **(this feature is only available to selected Play partners)**: Automatic protection can add runtime checks to your app's code to detect modification and use advanced obfuscation techniques to prevent the checks from being removed or reverse engineered. If the checks fail, the user will be prompted to get your app on Google Play or the app will not run.\n\nAutomatic protection requires no code changes or developer work before\ntesting. Learn more about\n[automatic protection in the Play Console help center](https://support.google.com/googleplay/android-developer/answer/10183279)."]]