GDPR 규정 준수를 위한 Facebook SDK 모범 사례

Facebook SDK를 통합하고 나서 특정 앱 이벤트가 이벤트 관리자에 대해 자동으로 로깅 및 수집됩니다. 단, 자동 앱 이벤트 로깅을 비활성화한 경우는 예외입니다. 앱 코드에서 이를 변경하거나 앱 대시보드나 이벤트 관리자의 앱 이벤트에서 토글을 통해 변경할 수 있습니다. AutoLogAppEventsEnabled 플래그와 토글의 값이 상충하는 경우, 'Facebook SDK 자동 이벤트 로깅’ 토글의 값을 따릅니다. 수집되는 정보 및 자동 앱 이벤트 로깅을 비활성화하는 방법에 대한 자세한 내용은 자동 앱 이벤트 로깅을 참조하세요.

앱 이벤트용 FB SDK를 사용하는 경우, Facebook 비즈니스 약관에서는 적절한 법적 근거에 따라 사용자 정보를 수집하고 처리할 것을 요구합니다. GDPR 및 기타 EU 데이터 보호 규정에 따라 Facebook SDK를 통해 데이터를 전송하기 전에 최종 사용자에게 동의를 받아야 합니다. 그러므로 SDK 구현이 이러한 동의 요건을 충족하는지 확인해야 합니다.

SDK는 기본적으로 앱 설치, 앱 시작과 같이 앱에서 발생하는 일반적인 모바일 이벤트를 자동으로 로깅합니다. 이러한 이벤트는 앱의 사용자 행동과 광고 캠페인 성과에 대한 인사이트를 제공하기 위해 앱이 열렸을 때 Facebook으로 전송됩니다.

EU 데이터 보호법과 Meta 비즈니스 도구 약관에 따른 법적 의무를 준수하기 위한 동의 메커니즘을 구현하는 데 도움을 드리기 위해 다음과 같은 리소스를 제공합니다.

동의 가이드

동의 가이드에서는 웹사이트 및 앱에서 사용자에게 동의를 얻기 위한 실무 지침 및 모범 사례를 참조할 수 있습니다. 위의 동의 가이드에서 언급했듯이 별도의 사용자 등록 플로를 통해 앱 설치 전에 사용자에게 정보에 입각한 동의를 얻으려면 예전과 같은 방식으로 Facebook SDK와 자동 로깅 기능을 계속 사용하시면 됩니다.

자동 이벤트 수집 지연

사용자 동의를 얻기 위한 메커니즘을 미리 설치하지 않는 경우 FB SDK를 사용하기 위한 법적 의무를 이행하기 위해 추가 조치를 취해야 합니다. 사용자가 앱 내 동의 플로를 통과할 수 있을 때까지 SDK에서의 데이터 전송을 지연하는 도구를 제공해 드립니다.

요구 사항

  • Facebook SDK v.5.0 이상. 앱을 최신 SDK 버전으로 업그레이드하는 방법은 업그레이드 가이드를 참조하세요.

Android

AndroidManifest.xml 파일에서 AutoLogAppEventsEnabled 플래그를 false로 설정합니다.

<application>
  ...
  <meta-data android:name='com.facebook.sdk.AutoLogAppEventsEnabled'
           android:value='false'/>
  ...
</application>

그런 다음, FacebookSdk 클래스의 setAutoLogAppEventsEnabled() 메서드를 호출하고 true로 설정하여 최종 사용자가 동의를 제공한 후 자동 로깅을 다시 활성화합니다.

FacebookSdk.setAutoLogAppEventsEnabled(true);

iOS

Xcode에서 앱의 .plist를 코드로 열고 다음과 같은 XML을 속성 사전에 추가합니다.

<key>FacebookAutoLogAppEventsEnabled</key><false/>
  • 그런 다음, FBSDKSettings 클래스의 setAutoLogAppEventsEnabled 메서드를 호출하고 Swift의 경우 true로, Objective-C의 경우 YES로 설정하여 최종 사용자가 동의를 제공한 후 자동 로깅을 다시 활성화합니다.

Swift:

Settings.isAutoLogAppEventsEnabled = true

Objective-C:

[FBSDKSettings setAutoLogAppEventsEnabled:YES];

자동 이벤트 수집 비활성화

자동 이벤트 로깅을 완전히 비활성화하여 앱을 열었을 때 Facebook으로의 데이터 전송을 모두 중단할 수 있습니다. 참고: 자동 이벤트 로깅을 비활성화 상태로 유지하는 경우 앱 설치 및 앱 시작 이벤트를 더 이상 추적할 수 없습니다. 이러한 이벤트를 로깅하려면 더 많은 코드를 직접 추가하세요.

Android

다음 행을 AndroidManifest.xml 파일에 추가합니다.

<application>
  ...
  <meta-data android:name='com.facebook.sdk.AutoLogAppEventsEnabled'
           android:value='false'/>
  ...
</application>

iOS

Xcode에서 앱의 .plist를 코드로 열고 다음과 같은 XML을 속성 사전에 추가합니다.

<key>FacebookAutoLogAppEventsEnabled</key>
<false/>

자동 SDK 초기화 비활성화

Android용 Facebook SDK는 앱이 열렸을 때 자동으로 초기화됩니다. 이는 SDK를 초기화할 때 Facebook에서 앱 설정을 가져옵니다. Facebook으로 보내는 모든 네트워크 요청을 차단하고자 하는 경우, 자동 초기화를 비활성화할 수 있습니다.

Android

AndroidManifest.xml 파일에서 AutoInitEnabled 플래그를 false로 설정합니다.

<application>
  ...
  <meta-data android:name="com.facebook.sdk.AutoInitEnabled"
           android:value="false"/>
  ...
</application>

그런 다음, FacebookSdk 클래스의 setAutoInitEnabled() 메서드를 호출하고 true로 설정하여 최종 사용자가 동의를 제공한 후 자동 초기화를 다시 활성화합니다.

FacebookSdk.setAutoInitEnabled(true);
FacebookSdk.fullyInitialize();