Google User Messaging Platform (UMP) SDK הוא כלי לניהול פרטיות והעברת הודעות שעוזר לכם לנהל את אפשרויות הפרטיות. למידע נוסף, ראו מידע על הכלי 'פרטיות והודעות'.
יצירת סוג הודעה
יוצרים הודעות למשתמשים באמצעות אחד מהסוגים הזמינים של הודעות למשתמשים בכרטיסייה פרטיות והודעות בחשבון Ad Manager. מערכת UMP SDK מנסה להציג הודעת פרטיות שנוצרה מהמזהה של האפליקציה ב-Ad Manager שהוגדר בפרויקט.
פרטים נוספים זמינים במאמר מידע על פרטיות והודעות.
כשרוצים לקבל הסכמה
כדי לקבל הסכמה, מבצעים את השלבים הבאים:
- בקשה למידע העדכני ביותר על הסכמת המשתמש.
- טוענים ומציגים טופס הסכמה, אם צריך.
בקשה לקבלת פרטי הסכמה
צריך לבקש עדכון של פרטי ההסכמה של המשתמש בכל השקת אפליקציה, באמצעות Update()
. הבקשה הזו בודקת את הפרטים הבאים:
- אם נדרשת הסכמה. לדוגמה, נדרשת הסכמה בפעם הראשונה או שפג תוקפה של ההחלטה הקודמת בנושא הסכמה.
- אם נדרשת נקודת כניסה לאפשרויות הפרטיות. בהודעות פרטיות מסוימות, האפליקציות צריכות לאפשר למשתמשים לשנות את אפשרויות הפרטיות שלהם בכל שלב.
אם צריך, טוענים טופס של הודעת פרטיות ומציגים אותו
אחרי שתקבלו את סטטוס ההסכמה העדכני ביותר, תוכלו להפעיל את הפונקציה LoadAndShowConsentFormIfRequired()
כדי לטעון את הטפסים הנדרשים לאיסוף הסכמת המשתמשים. הטפסים מוצגים מיד לאחר הטעינה.
הקוד הבא מראה איך לבקש את פרטי ההסכמה העדכניים של המשתמש. אם צריך, הקוד יטען ויציג טופס של הודעת פרטיות:
void Start()
{
// Create a ConsentRequestParameters object.
ConsentRequestParameters request = new ConsentRequestParameters();
// Check the current consent information status.
ConsentInformation.Update(request, OnConsentInfoUpdated);
}
void OnConsentInfoUpdated(FormError consentError)
{
if (consentError != null)
{
// Handle the error.
UnityEngine.Debug.LogError(consentError);
return;
}
// If the error is null, the consent information state was updated.
// You are now ready to check if a form is available.
ConsentForm.LoadAndShowConsentFormIfRequired((FormError formError) =>
{
if (formError != null)
{
// Consent gathering failed.
UnityEngine.Debug.LogError(consentError);
return;
}
// Consent has been gathered.
});
}
אפשרויות פרטיות
חלק מההודעות בנושא פרטיות מוצגות מנקודת כניסה לאפשרויות פרטיות שמוצגת על ידי בעל התוכן הדיגיטלי, ומאפשרות למשתמשים לנהל את אפשרויות הפרטיות שלהם בכל שלב. למידע נוסף על ההודעה שהמשתמשים רואים בנקודת הכניסה של אפשרויות הפרטיות, ראו סוגים זמינים של הודעות למשתמשים.
כדי להטמיע נקודת כניסה לאפשרויות הפרטיות:
- אחרי שמפעילים את
Update()
, בודקים אתPrivacyOptionsRequirementStatus
כדי לקבוע אם נדרשת נקודת כניסה לאפשרויות הפרטיות. - אם צריך, מוסיפים לאפליקציה רכיב של ממשק משתמש שגלוי ואפשר לבצע איתו אינטראקציה, שישמש כנקודת הכניסה לאפשרויות הפרטיות. אם אין צורך בנקודת כניסה לפרטיות, צריך להגדיר את רכיב ממשק המשתמש כך שלא יהיה גלוי ולא ניתן לבצע איתו אינטראקציה.
- הצגת הטופס של אפשרויות הפרטיות באמצעות
ShowPrivacyOptionsForm()
.
הקוד לדוגמה הבא מדגים את השלבים האלה:
[SerializeField, Tooltip("Button to show the privacy options form.")]
private Button _privacyButton;
private void Start()
{
// Enable the privacy settings button.
if (_privacyButton != null)
{
_privacyButton.onClick.AddListener(UpdatePrivacyButton);
// Disable the privacy settings button by default.
_privacyButton.interactable = false;
}
}
/// <summary>
/// Shows the privacy options form to the user.
/// </summary>
public void ShowPrivacyOptionsForm()
{
Debug.Log("Showing privacy options form.");
ConsentForm.ShowPrivacyOptionsForm((FormError showError) =>
{
if (showError != null)
{
Debug.LogError("Error showing privacy options form with error: " + showError.Message);
}
// Enable the privacy settings button.
UpdatePrivacyButton();
});
}
/// <summary>
/// Updates the privacy buttons visual state based on the consent information.
/// </summary>
void UpdatePrivacyButton()
{
if (_privacyButton != null)
{
_privacyButton.interactable =
ConsentInformation.PrivacyOptionsRequirementStatus ==
PrivacyOptionsRequirementStatus.Required;
}
}
בקשה להצגת מודעות
לפני ששולחים בקשות להצגת מודעות באפליקציה, צריך לבדוק אם קיבלתם מהמשתמש הסכמה באמצעות
CanRequestAds()
. יש שני מקומות שצריך לבדוק בזמן קבלת ההסכמה:
- אחרי שהתקבלה הסכמה בסשן הנוכחי.
- מיד אחרי שתתקשרו למספר
Update()
. יכול להיות שהתקבלה הסכמה בסשן הקודם. כדי לצמצם את זמן האחזור, מומלץ לא להמתין להשלמת הקריאה החוזרת כדי שתוכלו להתחיל לטעון מודעות בהקדם האפשרי אחרי השקת האפליקציה.
גם אם מתרחשת שגיאה בתהליך קבלת ההסכמה, עדיין צריך לבדוק אם אפשר לבקש מודעות. ה-SDK של UMP משתמש בסטטוס ההסכמה מהסשן הקודם.
void Start()
{
// Create a ConsentRequestParameters object.
ConsentRequestParameters request = new ConsentRequestParameters();
// Check the current consent information status.
ConsentInformation.Update(request, OnConsentInfoUpdated);
}
void OnConsentInfoUpdated(FormError consentError)
{
if (consentError != null)
{
// Handle the error.
UnityEngine.Debug.LogError(consentError);
return;
}
// If the error is null, the consent information state was updated.
// You are now ready to check if a form is available.
ConsentForm.LoadAndShowConsentFormIfRequired((FormError formError) =>
{
if (formError != null)
{
// Consent gathering failed.
UnityEngine.Debug.LogError(consentError);
return;
}
// Consent has been gathered.
if (ConsentInformation.CanRequestAds())
{
MobileAds.Initialize((InitializationStatus initstatus) =>
{
// TODO: Request an ad.
});
}
});
}
בדיקה
אם רוצים לבדוק את השילוב באפליקציה במהלך הפיתוח, צריך לבצע את השלבים הבאים כדי לרשום את מכשיר הבדיקה באופן פרוגרמטי. חשוב להסיר את הקוד שמגדיר את מזהי המכשירים לבדיקה לפני שמפרסמים את האפליקציה.
- התקשרו אל
Update()
. בודקים בפלט היומן הודעה שדומה לדוגמה הבאה, שבה מוצג מזהה המכשיר ואיך מוסיפים אותו כמכשיר בדיקה:
Android
Use new ConsentDebugSettings.Builder().addTestDeviceHashedId("33BE2250B43518CCDA7DE426D04EE231") to set this as a debug device.
iOS
<UMP SDK>To enable debug mode for this device, set: UMPDebugSettings.testDeviceIdentifiers = @[2077ef9a63d2b398840261c8221a0c9b]
מעתיקים את מזהה מכשיר הבדיקה ללוח.
משנים את הקוד כך שיפעיל את
DebugGeography.TestDeviceHashedIds
ויעביר רשימה של מזהי המכשירים לבדיקה.void Start() { var debugSettings = new ConsentDebugSettings { TestDeviceHashedIds = new List<string> { "TEST-DEVICE-HASHED-ID" } }; // Create a ConsentRequestParameters object. ConsentRequestParameters request = new ConsentRequestParameters { ConsentDebugSettings = debugSettings, }; // Check the current consent information status. ConsentInformation.Update(request, OnConsentInfoUpdated); }
איך מגדירים אזור גיאוגרפי
באמצעות UMP SDK תוכלו לבדוק את אופן הפעולה של האפליקציה כאילו המכשיר נמצא באזורים שונים, כמו אזור הכלכלי האירופי או בריטניה, באמצעות DebugGeography
. הערה: הגדרות ניפוי הבאגים פועלות רק במכשירי בדיקה.
void Start()
{
var debugSettings = new ConsentDebugSettings
{
// Geography appears as in EEA for debug devices.
DebugGeography = DebugGeography.EEA,
TestDeviceHashedIds = new List<string>
{
"TEST-DEVICE-HASHED-ID"
}
};
// Create a ConsentRequestParameters object.
ConsentRequestParameters request = new ConsentRequestParameters
{
ConsentDebugSettings = debugSettings,
};
// Check the current consent information status.
ConsentInformation.Update(request, OnConsentInfoUpdated);
}
איפוס מצב ההסכמה
כשבודקים את האפליקציה באמצעות ה-SDK של UMP, כדאי לאפס את המצב של ה-SDK כדי שתוכלו לדמות את חוויית ההתקנה הראשונה של המשתמש.
כדי לעשות זאת, ה-SDK מספק את השיטה Reset()
.
ConsentInformation.Reset();
דוגמאות ב-GitHub
דוגמה מלאה לשילוב של UMP SDK שמתואר בדף הזה מופיעה ב-HelloWorld.