ข้ามไปยังเนื้อหา

การจัดการความยินยอมของผู้ใช้

Pushwoosh รองรับการปฏิบัติตามกฎระเบียบด้านความเป็นส่วนตัว (เช่น GDPR, CCPA) โดยอนุญาตให้นักพัฒนาควบคุมว่า SDK จะเริ่มการสื่อสารกับเซิร์ฟเวอร์ Pushwoosh เมื่อใด ซึ่งช่วยให้แน่ใจได้ว่าจะไม่มีการรวบรวมข้อมูลใดๆ ก่อนที่ผู้ใช้จะให้ความยินยอมอย่างชัดแจ้ง

ภาพรวม

Anchor link to

โดยค่าเริ่มต้น 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 SwiftUI
import PushwooshFramework
var serverCommunicationAllowed = PWCoreServerCommunicationManager.sharedInstance.isServerCommunicationAllowed
print("isServerCommunicationAllowed: ", serverCommunicationAllowed)

เปิดใช้งานการสื่อสารของ SDK หลังจากได้รับความยินยอม

Anchor link to

เมื่อผู้ใช้ให้ความยินยอมแล้ว ให้เปิดใช้งานการสื่อสารดังนี้:

import SwiftUI
import PushwooshFramework
Pushwoosh.sharedInstance().startServerCommunication()

ลงทะเบียนเพื่อรับการแจ้งเตือนแบบพุช

Anchor link to

เมื่อเปิดใช้งานการสื่อสารแล้ว ให้ลงทะเบียนเพื่อรับการแจ้งเตือนแบบพุชอย่างชัดเจน:

import SwiftUI
import PushwooshFramework
Pushwoosh.sharedInstance().registerForPushNotifications()

ปิดใช้งานการสื่อสาร

Anchor link to

เพื่อหยุดการสื่อสารกับเซิร์ฟเวอร์ Pushwoosh (เช่น หากผู้ใช้เพิกถอนความยินยอม):

import SwiftUI
import PushwooshFramework
Pushwoosh.sharedInstance().stopServerCommunication()

ปิดการใช้งานการสื่อสารของ 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);

เปิดใช้งานการสื่อสารของ SDK หลังจากได้รับความยินยอม

Anchor link to

เมื่อผู้ใช้ให้ความยินยอมแล้ว ให้เปิดใช้งานการสื่อสารดังนี้:

import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().startServerCommunication();

ลงทะเบียนเพื่อรับการแจ้งเตือนแบบพุช

Anchor link to

หลังจากเปิดใช้งานการสื่อสารแล้ว ให้ลงทะเบียนเพื่อรับการแจ้งเตือนแบบพุชอย่างชัดเจน:

import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().registerForPushNotifications();

ปิดใช้งานการสื่อสาร

Anchor link to

เพื่อหยุดการสื่อสารกับเซิร์ฟเวอร์ Pushwoosh (เช่น หากผู้ใช้เพิกถอนความยินยอม):

import com.pushwoosh.Pushwoosh;
Pushwoosh.getInstance().stopServerCommunication();

ปิดการใช้งานการสื่อสารของ 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 to

เพื่อหยุดการสื่อสารกับเซิร์ฟเวอร์ Pushwoosh (เช่น หากผู้ใช้เพิกถอนความยินยอม):

Pushwoosh.Instance.SetCommunicationEnabled(false);

ปิดใช้งานการสมัครรับข้อมูลอัตโนมัติเมื่อเริ่มต้น

Anchor link to

โดยค่าเริ่มต้น Pushwoosh SDK จะแสดงหน้าต่างแจ้งให้สมัครรับข้อมูลของเบราว์เซอร์ทันทีที่เริ่มต้นทำงาน เพื่อป้องกันไม่ให้ SDK แสดงหน้าต่างแจ้งให้สมัครรับข้อมูลโดยอัตโนมัติเมื่อเริ่มต้น ให้ตั้งค่าพารามิเตอร์ communicationEnabled เป็น false ในการเรียก init

<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 to

เพื่อหยุดการสื่อสารกับบริการของ Pushwoosh (เช่น หากผู้ใช้เพิกถอนความยินยอม) ให้เรียก setCommunicationEnabled ด้วยค่า false

Pushwoosh.setCommunicationEnabled(false);