Protected Audience 的應用程式安裝廣告篩選功能

通常,透過應用程式安裝廣告提高新的行動應用程式的安裝量。為了盡可能提高廣告支出的投資報酬率,建議放送廣告時,不要將已安裝應用程式的裝置列入範圍。在本提案中,我們將這項做法稱為「應用程式安裝廣告篩選功能」。

本提案說明 Android 版 Protected Audience 如何以保護隱私權的方式支援內容相關廣告篩選功能,特別是應用程式安裝廣告篩選功能。如要採用此做法,裝置上的應用程式必須明確選擇啟用應用程式安裝廣告篩選功能。選擇廣告時,系統會根據 在廣告技術已知裝置上安裝的應用程式清單中

請注意, 已安裝的應用程式只會在廣告選擇流程中顯示,而且需要使用 買方平台,表示應根據 應用程式的持續性

設定應用程式安裝廣告篩選功能的步驟如下:

步驟 1:註冊應用程式以使用應用程式安裝廣告篩選功能

若要選擇啟用應用程式安裝廣告篩選功能,應用程式開發人員應透過廣告技術買家 eTLD+1 清單,從應用程式或廣告技術 SDK 叫用 registerForAdFiltering 應用程式註冊 API。這可讓名單上的買方 只給這些買家 根據應用程式的安裝狀態篩選廣告 或是透過廣告技術的 SDK註冊後,您就能完全掌控 應用程式開發人員:說明應用程式是否應參與應用程式安裝廣告 篩選。 java void registerForAdFiltering(List<AdTechIdentifier> buyers);

步驟 2:要求過濾應用程式安裝廣告

在考慮對廣告進行出價時,買方可以選擇根據應用程式的安裝狀態來標記要過濾的廣告。爲此,請在應用程式的中繼資料中加入應用程式的套件名稱。應用程式安裝廣告篩選要求是 Protected Audience 競價程序中,要填入的廣告資料的一部分。系統會根據內容是相關廣告或再行銷廣告,建立不同的廣告資料。

  • 針對內容相關廣告用途 (應用程式安裝廣告篩選功能的主要用途),篩選資訊會包含在廣告資料中,而買方在回應 Protected Audience 以外的內容相關出價時,會向賣方提供這些資料。Protected Audience 預期篩選資訊會做為內容相關回應的一部分傳回,就像其他廣告專用的中繼資料一樣。
  • 針對再行銷廣告用途,Protected Audience 預期篩選資訊會包含在自訂目標對象中。有 2 個商機 加入這個名單:加入目標對象時,以及擷取時 請將新的目標對象資料納入目標對象更新流程中。 用來篩除應用程式安裝廣告的要求應如下所示: AdData JSON 物件: json { "render_uri": "https://..", "metadata": {..}, "filters": { "app_install": { "app_package_names": ["app1.package", "app2.package"] } } }

步驟 3:在選擇廣告期間篩除應用程式安裝廣告

在廣告請求中,買方可以將多個廣告連同篩選資訊傳回賣方,以便系統過濾已安裝應用程式的廣告。賣方必須將篩選資訊做為 adData 欄位中 selectAds 函式設定的一部分傳遞。Android 預期的訊息格式與以下示例類似。

AdData myAdData = new AdData.Builder()
        .setRenderUri(Uri.parse("https://.."))
        .setMetadata("{...}")
        .setFilters(new AdFilters.Builder()
                .setAppInstalledFilter(new AppInstalledFilter.Builder()
                    .setPackageNames(ImmutableList.of("app1.package", "app2.package"))
                    .build())
                .build())
        .build();
AdSelectionConfig myAdSelectionConfig = new AdSelectionConfig.Builder()
    .setSeller(AdTechIdentifier.fromString("example-ssp1.com"))
    .setDecisionLogicUri(Uri.parse("https://..."))
    ...
    .setContextualAds(ImmutableList.of(new ContextualAd.Builder()
                      .setBuyer(AdTechIdentifier.fromString("example.com"))
                      .setReportingUri("https://example.com/reporting")
                      .setBid(20)
                      // myAdData could be taken from the JSON above
                      .setAd(myAdData)
                      .build()))
    .build();
// Invoke ad services API to initiate ad selection workflow.
selectAds(myAdSelectionConfig);

selectAds API 中繼續篩選。Protected Audience 篩選器 如果訊息中指定的應用程式與廣告技術中的應用程式相符,則比對廣告。 買家的這可能會有以下兩種結果:

  • 應用程式不在這份清單中,代表使用者尚未安裝與開啟應用程式。
  • 在清單中找到應用程式,表示已安裝並開啟該應用程式。 如果 Protected Audience 偵測到該應用程式已安裝,則系統會從競價用於執行 scoreAds 的廣告清單中,將該廣告排除。

使用內容相關廣告時的注意事項

搭配應用程式安裝廣告篩選功能,Protected Audience API 即可開始支援內容相關廣告篩選功能。假如競價是針對內容相關廣告和再行銷廣告,或僅針對內容相關廣告,則您必須指定幾個條件。

  • 執行 selectAd 競價時,買方可選擇傳入 ContextualAd 物件清單。這些物件包含廣告買方的 eTLD+1 廣告出價、指向廣告報表邏輯的網址,以及 包含實際廣告素材網址的 AdData,以及驗證資料 屬於買方簽章 (詳情請參閱內容相關廣告簽署) 詳細資料。請注意,AdData 格式可用於內容相關廣告和再行銷廣告。
  • 競價程序開始時,系統會根據 AdData.adFilters.appInstallFilters.packageNames 中指定的一組套件名稱,篩選內容相關廣告和再行銷廣告。接著,出價金額 而且再行銷和 內容相關廣告則使用提供的 scoreAds 函式評分。得分最高的廣告即為競價勝出者。請注意,即使沒有再行銷廣告,這項程序仍會運作。
  • 如果內容相關廣告贏得競價,並且應用程式觸發了曝光報表,Protected Audience 會從內容相關廣告資料中包含的報表網址,下載並執行名為 reportWin() 的 JS 函式。這與再行銷廣告贏得競價時產生報表的方式類似。

    JavaScript 回報函式範例:

    function reportWin(ad_selection_signals, per_buyer_signals, signals_for_buyer,
    contextual_signals) {
    let reporting_address = 'https://reporting.example.com';
    return {'status': 0, 'results': {'reporting_uri':
         reporting_address + '?some_signal=' + per_buyer_signals.some_signal} };
    }
    

內容相關廣告簽署

  • 如果內容相關廣告含有應用程式安裝篩選功能,必須由買方簽署。平台會使用這個簽章驗證提供廣告的廣告技術,並確認廣告要套用哪些廣告技術應用程式安裝篩選器。這麼做可以防止惡意廣告技術利用其他廣告技術的識別資訊,享有其他廣告技術的應用程式安裝篩選註冊服務。

  • Privacy Sandbox 會從註冊期間提供的廣告技術端點擷取這些金鑰。建議的最佳做法是,金鑰必須經常更新,最久不超過每 6 個月更新一次。

  • 在註冊過程中,Privacy Sandbox 會要求廣告技術確認廣告技術提供的端點是否可用。如要進一步瞭解現有和新註冊的廣告技術需要採取哪些行動,請參閱註冊操作說明

  • 如需更詳細的導入操作說明, 。