0Pricing
React Native Academy · 강의

콘텐츠 등급, 정책 및 개인정보 보호

콘텐츠 등급 설문을 완료하고 Data Safety 섹션에서 데이터 안전 관행을 신고하며, 심사 거부를 피하도록 Google Play 정책을 준수하는지 확인합니다.

콘텐츠 등급, 정책 및 개인정보 보호은(는) CoddyKit의 무료 React Native Academy 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 React Native Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. React Native Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

이 강의의 일부는 아직 번역되지 않았으며 영어로 표시됩니다.

Why Content Ratings Matter

Content ratings tell users (and parents) what kind of content an app contains and what age group it is appropriate for. Google Play requires you to complete a content rating questionnaire for every app. The rating is computed automatically based on your answers — you cannot choose it manually. An incorrect rating (e.g., marking a violent game as 'Everyone') risks policy violation and removal from the store.

The Content Rating Questionnaire

The questionnaire is found in Play Console under Policy > App content > Ratings. It asks about: violence, sexual content, profanity, controlled substances, gambling, user-generated content (UGC), and whether the app targets children. Your honest answers generate an IARC rating (International Age Rating Coalition) which is converted to regional equivalents (ESRB in the US, PEGI in Europe, USK in Germany, etc.).

// Common questionnaire categories:
// Violence:
//   - Does it depict violence? Cartoonish or realistic?
//   - Is there graphic injury or gore?
// Sexual content:
//   - Is there nudity or sexual themes?
// Profanity:
//   - Does the app contain crude language?
// Substances:
//   - References to alcohol, tobacco, drugs?
// Gambling:
//   - Real-money gambling? Simulated gambling?
// User content:
//   - Does the app allow user-generated content?
//   - Can users share content publicly?

Rating Results and Regional Equivalents

After completing the questionnaire, Play Console shows your IARC rating and regional equivalents. A typical productivity app gets Everyone (ESRB) / 3+ (PEGI). An app with mild cartoon violence might get Everyone 10+. Understanding regional equivalents matters for global launches — some regions restrict certain ratings to adult devices or require parental consent flows. Ratings expire only if you significantly change the app's content.

// Rating equivalents for a typical clean productivity app:
// ESRB (USA):         Everyone (E)
// PEGI (Europe):      3+
// USK (Germany):      0+
// CERO (Japan):       A (All Ages)
// ClassInd (Brazil):  Livre
// OFLC (Australia):   G

// A game with combat might get:
// ESRB:  Teen (T)
// PEGI:  12
// USK:   12

Target Audience and Apps for Children

The Target Audience section (Policy > App content > Target audience and content) determines if your app is designed for children. If you select an age range that includes children under 13, Google applies the Families Policy automatically: no behavioral advertising, no third-party trackers (unless COPPA-certified), no deceptive design patterns, and the app must use child-safe APIs only. Neutral apps (not specifically for children) should select 13+ as the minimum target age.

// Target audience options:
// Ages 5 and under
// Ages 6-8
// Ages 9-12
// Ages 13-15  <- no Families Policy applies
// Ages 16-17
// Ages 18+

// If you select any age under 13 AND your app
// is designed for children:
// - Families Policy applies
// - No behavioral ads (AdMob Families mode)
// - No IDFA/AAID collection
// - No in-app purchases without parental consent
// - Must pass Families Policy review

Google Play Policies Overview

The Google Play Developer Program Policies cover a wide range of content and behavior rules. Key areas include: Intellectual property (no fake celebrity apps, no icon/name copying), Deceptive behavior (no fake reviews, no misleading functionality claims), Malware (no apps that collect data without disclosure), User data (the Data Safety section must accurately reflect your data practices), and Monetization (no unauthorized subscription manipulations).

// Common policy violations that cause removal:
// 1. App impersonates another brand
//    (similar name/icon to popular app)
// 2. App requests unnecessary permissions
//    (CONTACTS for a calculator)
// 3. App uses deceptive ad placement
//    (close button too small, ads placed near buttons)
// 4. App uses undisclosed data collection
//    (sending device ID to server without disclosure)
// 5. Subscription cancellation made deliberately hard
//    (dark patterns in billing flows)

Data Safety Section

The Data Safety section (Policy > App content > Data safety) is Google's equivalent to Apple's Privacy Nutrition Label. You declare what data your app collects (name, email, location, etc.), whether it is shared with third parties, whether it is encrypted, and whether users can request deletion. This information appears on your Play Store listing. The declaration must match your actual app behavior — inaccurate declarations can cause policy violations.

// Data Safety categories to declare:

// Location:
//   Approximate location (GPS at city level)
//   Precise location (GPS coordinates)
//   Whether location is shared with third parties

// Personal info:
//   Name, Email, Phone number
//   User IDs, Address

// Device or other IDs:
//   Device or other IDs (Firebase installation ID, advertising ID)

// App activity:
//   App interactions, In-app search history, Installed apps

// For each data type:
//   - Is it collected?
//   - Is it shared with third parties?
//   - Is it required or optional?

GDPR and CCPA Compliance

If your app is available in the EU or California, you must comply with GDPR (EU) and CCPA (California). Key requirements: obtain explicit consent before collecting personal data, provide a way to delete user data on request, disclose what data is collected and why, and have a privacy policy. For apps using advertising, implement a consent management platform (CMP) that shows a GDPR consent dialog to EU users before loading ads.

// GDPR compliance checklist for React Native apps:

// 1. Privacy policy: Live URL, in user's language
// 2. Consent: Collect BEFORE any data collection
//    Use UMP SDK (Google) or a CMP for ads
// 3. Right to deletion: In-app 'Delete my account' option
//    (Google Play requires this from 2024)
// 4. Data minimization: Only collect what you need
// 5. Storage limitation: Delete data when no longer needed

// Account deletion requirement (from Dec 2023):
// All apps must offer in-app account deletion
// Accessible from Settings or Profile screen

Permission Best Practices

Google's policies require that permissions are necessary and proportional to the app's function. Request only the permissions you actually use. Never request READ_CONTACTS for an app that doesn't use contacts. Request permissions contextually — only when the feature requiring them is first used, not at app launch. Never ask again after a user declines twice — show a graceful message explaining the limitation instead.

// Permission best practice in React Native:
import { PermissionsAndroid } from 'react-native';

async function requestCameraIfNeeded() {
  // Only request when user taps 'Open Camera'
  const granted = await PermissionsAndroid.request(
    PermissionsAndroid.PERMISSIONS.CAMERA,
    {
      title: 'Camera Permission',
      message: 'This app needs your camera to scan QR codes.',
      buttonNeutral: 'Ask Me Later',
      buttonNegative: 'Cancel',
      buttonPositive: 'OK',
    }
  );

  if (granted === PermissionsAndroid.RESULTS.GRANTED) {
    openCamera();
  } else {
    showCameraUnavailableMessage();
  }
}

Advertising ID and Behavioral Ads

If your app uses the Advertising ID (AAID) for behavioral advertising, you must: declare this in the Data Safety section, provide a privacy policy that explains ad targeting, and respect the user's Opt out of Ads Personalization setting (accessible in Android system settings). Apps targeting children must not use AAID at all. Violating advertising ID policies can result in app removal or developer account suspension.

// Check if user has opted out of ad personalization
import { NativeModules } from 'react-native';

// If using Google Mobile Ads SDK:
import MobileAds from 'react-native-google-mobile-ads';

async function initAds() {
  const adapterStatuses = await MobileAds().initialize();

  // Check consent status before showing personalized ads
  // Use Google's User Messaging Platform (UMP) SDK:
  // https://developers.google.com/admob/react-native/privacy
  const consentInfo = await ConsentInformation.requestConsentInfoUpdate();
  if (consentInfo.isConsentFormAvailable) {
    await ConsentForm.loadAndShowConsentFormIfRequired();
  }
}

Responding to Policy Violations

If Google detects a policy violation, you receive an email and a notification in Play Console with a warning (fix within a deadline) or an app removal. Repeated violations can result in developer account termination. To respond: read the policy cited, fix the violation, and submit an appeal explaining your changes. For account appeals, the Google Play Policy Help Center has a formal appeals process. Act quickly — warnings expire and unresolved issues become permanent strikes.

// Policy violation response workflow:
// 1. Read the violation notice (specific guideline cited)
// 2. Fix the violation in code or metadata
// 3. Build and submit a new version
// 4. Submit an appeal in Play Console:
//    Policy status > Appeal
//    Explain: 'We removed the feature X that caused the
//    violation. The updated version (1.2.1) no longer
//    collects location data without user consent.'
// 5. Update your privacy policy if data practices changed
// 6. Update the Data Safety section to match

Pre-launch Reports and Security Testing

Play Console's Pre-launch report automatically tests your app on real Google devices when you upload to internal testing. It checks for crashes, ANRs, security vulnerabilities (SSL issues, exposed debug APIs), accessibility issues (small touch targets, missing content descriptions), and performance metrics. Review this report before promoting to production — it catches issues that manual testing might miss and reflects Google's automated policy checks.

// Pre-launch report sections (found in Play Console):
// Testing > Pre-launch report

// Security:
//   - SSL certificate validation errors
//   - Exposed debug endpoints
//   - Cleartext HTTP traffic (must use HTTPS)

// Accessibility:
//   - Touch targets < 48dp
//   - Missing contentDescription on images
//   - Text too small to read

// Performance:
//   - CPU usage during key flows
//   - Memory consumption
//   - Render frame rate

// Crashes:
//   - Automated test suite crash report
//   - Stack traces for any crashes found

Quick Check

Test your understanding of React Native Mobile Development concepts from this lesson.

Lesson Recap

In this lesson you learned: how to complete the content rating questionnaire and understand IARC regional ratings, how to fill out the Data Safety section accurately to match your app's actual data practices, and how GDPR, CCPA, and Google's permission policies affect your app. You also saw how the Pre-launch report helps catch issues before production. Next up we cover internal testing, staged rollout, and promoting to production.

자주 묻는 질문

“콘텐츠 등급, 정책 및 개인정보 보호” 강의는 무료인가요?

네 — “콘텐츠 등급, 정책 및 개인정보 보호” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 React Native Academy 강의 전체를 잠금 해제할 수 있습니다. React Native Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“콘텐츠 등급, 정책 및 개인정보 보호”에서 뭘 배우나요?

콘텐츠 등급 설문을 완료하고 Data Safety 섹션에서 데이터 안전 관행을 신고하며, 심사 거부를 피하도록 Google Play 정책을 준수하는지 확인합니다. 브라우저에서 직접 실행하는 실습 코드로 React Native Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

React Native Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 React Native Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.

“콘텐츠 등급, 정책 및 개인정보 보호” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 React Native Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 React Native Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 키스토어 생성 및 AAB 서명하기
  2. Play Console 등록 정보 설정하기
  3. 콘텐츠 등급, 정책 및 개인정보 보호
  4. 내부 테스트, 단계적 출시 및 프로덕션
← React Native Academy(으)로 돌아가기