사용자 동의 관리
Pushwoosh 는 개발자가 SDK 가 Pushwoosh 서버와 통신을 시작하는 시점을 제어할 수 있도록 하여 개인 정보 보호 규정(예: GDPR, CCPA) 준수를 지원합니다. 이를 통해 사용자가 명시적인 동의를 제공하기 전에 어떠한 데이터도 수집되지 않도록 보장할 수 있습니다.
기본적으로 Pushwoosh SDK 는 초기화 시 즉시 통신을 시작하고 장치 데이터를 수집합니다. 그러나 사용자가 동의를 제공할 때까지 통신이 발생하지 않도록 이 동작을 변경할 수 있습니다.
이 설정에서는:
-
사용자가 동의를 제공하면 SDK 가 초기화되고 데이터 수집을 시작합니다.
-
사용자가 동의를 제공하지 않으면 SDK 는 비활성 상태를 유지하며 어떠한 데이터도 수집하지 않습니다.
-
사용자가 나중에 동의를 철회하면 SDK 는 모든 활동을 중지하고 서버에서 연결을 해제합니다.
Pushwoosh 는 iOS, Android, Unity 에서 이 흐름을 관리하는 메커니즘을 제공합니다.
시작 시 SDK 서버 통신 비활성화
Anchor link to기본적으로 SDK 와의 통신은 활성화되어 있습니다. 사용자가 명시적으로 동의를 부여할 때까지 Pushwoosh 서버와의 모든 통신을 비활성화하려면 다음 키를 Info.plist 에 추가하십시오:
<key>Pushwoosh_ALLOW_SERVER_COMMUNICATION</key><false/>통신 상태 확인
Anchor link to통신이 현재 허용되는지 확인하려면 다음 메서드를 사용하십시오:
import SwiftUIimport PushwooshFramework
var serverCommunicationAllowed = PWCoreServerCommunicationManager.sharedInstance.isServerCommunicationAllowedprint("isServerCommunicationAllowed: ", serverCommunicationAllowed)import PushwooshFramework
var serverCommunicationAllowed = PWCoreServerCommunicationManager.sharedInstance.isServerCommunicationAllowedprint("isServerCommunicationAllowed: ", serverCommunicationAllowed)#import <PushwooshFramework/PushwooshFramework.h>
BOOL serverCommunicationAllowed = [PWCoreServerCommunicationManager sharedInstance].isServerCommunicationAllowed;NSLog(@"isServerCommunicationAllowed: %d", serverCommunicationAllowed);동의 후 SDK 통신 활성화
Anchor link to사용자가 동의를 부여하면 다음과 같이 통신을 활성화하십시오:
import SwiftUIimport PushwooshFramework
Pushwoosh.sharedInstance().startServerCommunication()import PushwooshFramework
Pushwoosh.sharedInstance().startServerCommunication()#import <PushwooshFramework/PushwooshFramework.h>
[[Pushwoosh sharedInstance] startServerCommunication];푸시 알림 등록
Anchor link to통신이 활성화되면 푸시 알림을 명시적으로 등록하십시오:
import SwiftUIimport PushwooshFramework
Pushwoosh.sharedInstance().registerForPushNotifications()import PushwooshFramework
Pushwoosh.sharedInstance().registerForPushNotifications()#import <PushwooshFramework/PushwooshFramework.h>
[[Pushwoosh sharedInstance] registerForPushNotifications];통신 비활성화
Anchor link toPushwoosh 서버와의 통신을 중지하려면(예: 사용자가 동의를 철회하는 경우):
import SwiftUIimport PushwooshFramework
Pushwoosh.sharedInstance().stopServerCommunication()import PushwooshFramework
Pushwoosh.sharedInstance().stopServerCommunication()#import <PushwooshFramework/PushwooshFramework.h>
[[Pushwoosh sharedInstance] stopServerCommunication];Android
Anchor link to시작 시 SDK 서버 통신 비활성화
Anchor link to기본적으로 통신은 활성화되어 있습니다. 사용자의 동의를 얻을 때까지 Pushwoosh 서버로 데이터가 전송되는 것을 방지하려면 다음을 AndroidManifest.xml 에 추가하십시오:
<meta-data android:name="com.pushwoosh.allow_server_communication" android:value="false" />통신 상태 확인
Anchor link to서버 통신이 현재 허용되는지 확인하려면 다음 메서드를 사용하십시오:
import com.pushwoosh.Pushwoosh;
boolean isCommunicationEnabled = Pushwoosh.getInstance().isServerCommunicationAllowed();Log.d("Pushwoosh", "Communication enabled = " + isCommunicationEnabled);import com.pushwoosh.Pushwoosh
val isCommunicationEnabled = Pushwoosh.getInstance().isServerCommunicationAllowed()Log.d("Pushwoosh", "Communication enabled = $isCommunicationEnabled")동의 후 SDK 통신 활성화
Anchor link to사용자가 동의를 부여하면 다음과 같이 통신을 활성화하십시오:
import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().startServerCommunication();import com.pushwoosh.Pushwoosh
Pushwoosh.getInstance().startServerCommunication()푸시 알림 등록
Anchor link to통신이 활성화되면 푸시 알림을 명시적으로 등록하십시오:
import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().registerForPushNotifications();import com.pushwoosh.Pushwoosh
Pushwoosh.getInstance().registerForPushNotifications()통신 비활성화
Anchor link toPushwoosh 서버와의 통신을 중지하려면(예: 사용자가 동의를 철회하는 경우):
import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().stopServerCommunication();import com.pushwoosh.Pushwoosh
Pushwoosh.getInstance().stopServerCommunication()Unity
Anchor link to시작 시 SDK 서버 통신 비활성화
Anchor link to기본적으로 SDK 와의 통신은 활성화되어 있습니다. 사용자가 명시적으로 동의를 부여할 때까지 Pushwoosh 서버와의 모든 통신을 비활성화하려면 플랫폼별 설정을 적용하십시오:
Android
Unity 프로젝트의 AndroidManifest.xml 에 다음을 추가하십시오:
<meta-data android:name="com.pushwoosh.allow_server_communication" android:value="false" />iOS
Info.plist 를 수정하십시오:
<key>Pushwoosh_ALLOW_SERVER_COMMUNICATION</key><false/>참고: RegisterForPushNotifications 를 호출하기 전에 통신을 활성화해야 합니다.
통신 상태 확인
Anchor link to서버 통신이 현재 허용되는지 확인하려면 다음 메서드를 사용하십시오:
bool enabled = Pushwoosh.Instance.IsCommunicationEnabled();동의 후 SDK 통신 활성화
Anchor link to동의 후 통신을 활성화하려면:
Pushwoosh.Instance.SetCommunicationEnabled(true);푸시 알림 등록
Anchor link to통신이 활성화되면 장치를 푸시 알림에 등록할 수 있습니다:
Pushwoosh.Instance.RegisterForPushNotifications();통신 비활성화
Anchor link toPushwoosh 서버와의 통신을 중지하려면(예: 사용자가 동의를 철회하는 경우):
Pushwoosh.Instance.SetCommunicationEnabled(false);Web Push
Anchor link to시작 시 자동 구독 비활성화
Anchor link to기본적으로 Pushwoosh SDK 는 초기화되는 즉시 기본 구독 프롬프트를 표시합니다. 초기화 시 SDK 가 구독 프롬프트를 자동으로 표시하는 것을 방지하려면 init 호출에서 communicationEnabled 매개변수를 false 로 설정하십시오.
<script type="text/javascript" src="//cdn.pushwoosh.com/webpush/v3/pushwoosh-web-notifications.js" async></script><script type="text/javascript"> var Pushwoosh = Pushwoosh || []; Pushwoosh.push(['init', { // other initialization parameters... communicationEnabled: false, // Disable communication to prevent automatic subscription prompts }]);</script>동의 후 구독 활성화
Anchor link to자동 구독을 비활성화하면 언제든지 사용자에게 구독을 요청할 수 있습니다. 사용자가 푸시 알림 수신에 동의하면(예: 사용자 지정 UI 의 “구독” 버튼을 클릭하여) setCommunicationEnabled 메서드를 호출하여 통신을 활성화할 수 있습니다. Pushwoosh.setCommunicationEnabled(true) 를 호출하면 Pushwoosh 서비스와의 통신이 활성화됩니다. 활성화되면 SDK 는 기본 브라우저 권한 프롬프트를 표시합니다.
Pushwoosh.setCommunicationEnabled(true) .then(() => { console.log('User is subscribed to push notifications.'); }) .catch((error) => { console.error('Error subscribing user:', error); });통신 비활성화
Anchor link toPushwoosh 서비스와의 통신을 중지하려면(예: 사용자가 동의를 철회하는 경우) setCommunicationEnabled 를 false 로 호출하십시오.
Pushwoosh.setCommunicationEnabled(false);