승인된 앱 판매자 (app-ads.txt)

승인된 앱 판매자, 즉 app-ads.txt는 앱 광고 인벤토리를 광고 사기로부터 보호하기 위한 IAB 이니셔티브입니다. app-ads.txt 파일을 만들면 내 인벤토리를 판매하도록 승인된 판매자를 식별할 수 있습니다. 승인된 판매자를 식별하면 스푸핑된 앱의 가짜 인벤토리로 인해 발생하는 광고비 지출을 효과적으로 방지할 수 있습니다.

app-ads.txt 파일은 누구나 사용할 수 있으며 광고 거래소, 공급측 플랫폼 (SSP), 기타 구매자, 서드 파티 공급업체에서 크롤링할 수 있습니다.

app-ads.txt는 필수는 아니지만 사용하는 것이 좋습니다. 특히 다른 사람이 내 앱을 스푸핑할 우려가 있을 경우 반드시 사용하는 것이 좋습니다.

app-ads.txt 파일은 앱 개발자가 앱의 개발자 웹사이트 루트 도메인에 게시하는 텍스트 파일입니다. 여기에는 해당 게시자의 인벤토리를 판매할 수 있도록 승인된 주체의 목록이 포함됩니다. app-ads.txt 파일을 사용하려면 게시자는 승인된 판매자 목록을 여러 광고 기술 공급업체에서 크롤링할 수 있도록 게시할 웹 도메인을 보유하고 있어야 합니다. Firebase를 비롯하여 임의의 파일 호스팅을 허용하는 다양한 도메인 호스팅 솔루션이 있습니다.

기본 요건

앱에 app-ads.txt를 설정하는 방법

  1. 아직 app-ads.txt 파일이 없는 경우 'app-ads.txt'라는 이름으로 텍스트 파일을 만들어서 저장합니다.

  2. 다음 코드 스니펫을 복사해 app-ads.txt 파일에 붙여넣습니다. pub-00000000000000를 게시자 ID로 대체합니다. 게시자 ID는 AdMob 콘솔 > 설정에서 확인할 수 있습니다.

    google.com, pub-00000000000000, DIRECT, f08c47fec0942fa0
    
  3. 개발자 웹사이트 (예: https://example.com/app-ads.txt)의 루트에 app-ads.txt를 게시합니다. 도메인이 Google Play에 등록된 대로 정확하게 입력되었는지 확인합니다.

  4. AdMob에서 app-ads.txt 파일을 크롤링하고 확인할 때까지 최소 24시간이 걸립니다.

  5. 나중에 다시 AdMob을 방문하여 app-ads.txt 상태를 확인하세요.

Firebase 호스팅을 이용하여 app-ads.txt 게시하기

루트 수준의 app-ads.txt 파일 업로드를 허용하지 않는 웹사이트 (예: 사이트 생성 서비스에서 빌드하고 호스팅하는 사이트)가 있는 경우 Firebase 호스팅을 이용하여 app-ads.txt 파일을 호스팅할 수 있습니다.

Firebase에서는 개발자의 맞춤 도메인 또는 Firebase 프로젝트의 무료 하위 도메인(web.appfirebaseapp.com)으로 app-ads.txt 파일을 호스팅하는 빠르고 안정적인 방법을 무료로 제공합니다.

시작하기 전에

Firebase 호스팅을 이용하여 app-ads.txt를 게시하려면 Firebase 프로젝트가 있어야 합니다. Firebase 프로젝트가 없는 경우 개발자 가이드에 따라 새 프로젝트를 만듭니다.

이미 AdMob 앱을 Firebase에 연결했거나 앱에서 Firebase 제품 중 하나 (예: Firebase용 Google 애널리틱스, 원격 구성)를 사용 중이면 기존 Firebase 프로젝트를 사용할 수 있습니다.

Firebase CLI 설치

npm (노드 패키지 관리자)을 사용하여 Firebase CLI를 설치할 수 있습니다. 그러나 Node.js에 익숙하지 않은 경우 독립형 바이너리를 대신 사용할 수 있습니다.

CLI 설치 방법 또는 최신 버전으로 업데이트하는 방법을 알아보려면 Firebase CLI 문서를 참고하세요.

프로젝트 초기화

로컬 머신에서 Firebase 프로젝트를 초기화하려면 프로젝트 디렉터리의 루트에서 다음 명령어를 실행합니다.

firebase init

프로젝트 초기화 중 Firebase CLI 프롬프트에서 다음을 수행합니다.

  1. Hosting 설정을 선택합니다.

  2. 로컬 프로젝트 디렉터리에 연결할 Firebase 프로젝트를 선택합니다.

    기존 프로젝트 사용을 선택한 다음 연결하려는 목록에서 프로젝트를 선택합니다.

  3. 공개 루트 디렉터리로 사용할 디렉터리를 지정합니다.

    Enter 키를 눌러 기본 공개 디렉터리를 선택합니다.

  4. 사이트 구성을 선택합니다.

    만들려는 웹사이트가 단일 페이지 앱이 아니므로 아니요를 선택합니다.

초기화가 끝나면 Firebase에서 두 개의 파일을 만들어 로컬 프로젝트 디렉터리의 루트에 추가합니다.

  • 웹사이트에 호스팅된 파일이 포함된 public 디렉터리
  • 프로젝트 구성이 나열되어 있는 firebase.json 구성 파일입니다.
  • 프로젝트 별칭을 저장하는 .firebaserc 파일

app-ads.txt 게시

app-ads.txt를 사이트에 게시하는 방법은 다음과 같습니다.

  1. app-ads.txt 파일을 로컬 프로젝트 디렉터리의 public 디렉터리에 넣습니다.

  2. 로컬 프로젝트 디렉터리의 루트에서 다음 명령어를 실행합니다.

    firebase deploy --only hosting
  3. 배포가 완료되면 다음 URL을 방문하여 app-ads.txt가 게시되었는지 확인하세요. (PROJECT_ID는 Firebase 프로젝트 ID입니다.)

    https://PROJECT_ID.web.app/app-ads.txt

    예: 프로젝트 ID가 'awesome-project'인 경우 브라우저의 주소 표시줄에 https://awesome-project.web.app/app-ads.txt를 입력합니다.

앱의 스토어 등록정보에 도메인/하위 도메인 추가

app-ads.txt 파일을 크롤링하려면 Google Play의 앱 등록정보에 새로 만든 도메인이나 하위 도메인을 등록해야 합니다.

앱 스토어 등록정보에서 다음과 같이 개발자 웹사이트를 업데이트하세요.

https://PROJECT_ID.web.app

리디렉션 설정 구성 (선택사항)

기존 웹사이트가 있고 app-ads.txt 파일을 호스팅하기 위해서만 Firebase 호스팅을 사용하려는 경우 Firebase 호스팅을 구성하여 방문 페이지를 기존 웹사이트로 리디렉션할 수 있습니다.

Firebase 호스팅은 사용자가 사이트를 방문할 때 기본적으로 public/index.html을 방문 페이지로 사용합니다. 사용자를 원하는 웹사이트 (예: 앱의 소셜 미디어 페이지)로 리디렉션하려면 다음 단계를 따르세요.

  1. 로컬 프로젝트 디렉터리의 루트에 위치한 firebase.json 파일을 엽니다.

  2. 호스팅 객체에서 다음과 같이 리디렉션 객체를 추가합니다.

    "hosting": {
      ...
      "redirects": [
        {
          "source": "/",
          "destination": "URL_TO_REDIRECT",
          "type": 301
        }
      ]
    }
    

    예를 들어 방문 페이지 URL이 https://www.example.com이면 리디렉션 구성은 다음과 같습니다.

    "hosting": {
      ...
      "redirects": [
        {
          "source": "/",
          "destination": "https://www.example.com",
          "type": 301
        }
      ]
    }
    
  3. 다음 명령어를 실행하여 사이트에 변경사항을 배포합니다.

    firebase deploy --only hosting
  4. 배포가 완료되면 사이트(https://PROJECT_ID.web.app)에 액세스하여 리디렉션 설정이 올바른지 확인합니다.

리소스