Prérequis
Dans ce guide d'implémentation, nous partons du principe que vous connaissez bien les éléments suivants:
- Implémentation des annonces AdSense pour les recherches personnalisées protocole
- Développement d'applications Android
- Association de la campagne Google Mobile Ads SDK pour Android (désormais inclus dans les services Google Play) avec un projet Android Studio. La version 9.0.0 des services Google Play est requise.
Classes
Pour diffuser des annonces AFSMA (également appelées annonces sur le Réseau de Recherche à hauteur dynamique) dans votre application : implémenter les classes suivantes:
- Cette classe hérite de la classe Android
ViewGroup
. et diffuse les annonces AFSMA. LeSearchAdView
effectue la demande d'annonce avec unDynamicHeightSearchAdRequest
et affiche les annonces renvoyées. LeSearchAdView
doit être ajouté à l'un des groupes de vues de l'application. SearchAdView
doit être instancié avec le contexte. dans lequelSearchAdView
s'exécute, généralement unActivity
.- Une fois l'élément
SearchAdView
instancié, vous devez appeler la méthodesetAdSize()
. avecAdSize.SEARCH
pour demander des annonces AFSMA. Les autres valeurs d'énumération comporteront des demandes d'annonces non compatibles avec APR pour les applications mobiles. - Appelez la méthode
setAdUnitId()
sur cet objet avec votre code de propriété.
DynamicHeightSearchAdRequest.Builder
- Cette classe encapsule les paramètres de demande d'annonce. Ceci est similaire à la définition de paramètres dans les objets d'appel d'annonce JavaScript. (options de page, options de bloc) pour le Web mobile et pour ordinateur d'APR.
- Définissez les paramètres avec les setters appropriés (en d'autres termes,
appelez
setQuery()
pour définir le paramètre de requête).
Exemple d'implémentation
L'exemple ci-dessous montre comment utiliser un Activity
pour créer un SearchAdView
.
en tant que sous-vue d'un ViewGroup
. Pour demander correctement des annonces AFSMA, le SearchAdView
doit appeler la méthode setAdSize()
avec AdSize.SEARCH
.
// MainActivity.java implementation
// (MainActivity is a subclass of Activity)
// Create the SearchAdView
final SearchAdView searchAdView = new SearchAdView(this);
// Set parameter to request for dynamic height search ads
searchAdView.setAdSize(AdSize.SEARCH); // Important!
// Replace with your pub ID (e.g. ms-app-pub-9616389000213823)
searchAdView.setAdUnitId("ms-app-pub-################");
// Add searchAdView to parent view group
...
Dans le même Activity
, créez un DynamicHeightSearchAdRequest.Builder
qui
détermine les paramètres de l'annonce qui sera affichée dans SearchAdView
.
Les annonces AFSMA sont configurées de la même manière que les annonces AdSense pour les recherches personnalisées.
consultez les annonces
pour les recherches personnalisées
Référence
pour en savoir plus.
// Create the ad request
DynamicHeightSearchAdRequest.Builder builder =
new DynamicHeightSearchAdRequest.Builder();
builder.setQuery("flowers");
builder.setNumber(2);
// Replace with the ID of a style from your custom search styles
builder.setAdvancedOptionValue("csa_styleId", "0000000001");
// Customization options (set using setters on
// DynamicHeightSearchAdRequest.Builder)
builder.setAdTest(true);
D'autres options de personnalisation sont possibles en définissant des propriétés supplémentaires sur la
DynamicHeightSearchAdRequest.Builder
.
Pour effectuer une demande d'annonce, appelez la méthode loadAd()
avec la
DynamicHeightSearchAdRequest.Builder
de l'objet SearchAdView
:
searchAdView.loadAd(builder.build());
Options avancées
La plupart des paramètres de demande d'annonce peuvent être définis via des méthodes setter.
sur l'objet DynamicHeightSearchAdRequest.Builder
.
Tous les paramètres qui n'ont pas de méthode setter dans
DynamicHeightSearchAdRequest.Builder
peut être défini à l'aide de paires clé/valeur
setAdvancedOptionValue()
.
Voir les annonces APR pour les recherches personnalisées
Référence
pour obtenir la liste complète des paramètres pouvant être définis à l'aide du
setAdvancedOptionValue()
.
Le paramètre de clé doit être précédé de "csa_". pour que la propriété soit correctement définie.
// Advanced customization options (set using key-value pair)
// Set a parameter (parameter_name) and its value (parameter_value)
// builder.setAdvancedOptionValue("csa_parameter_name", "parameter_value");
// Example: Show visible URL below description
// (domainLinkAboveDescription: false)
builder.setAdvancedOptionValue("csa_domainLinkAboveDescription", "false");
Si vous utilisez la méthode setter d'un paramètre et la définissez à l'aide de setAdvancedOptionValue
,
le second appel
remplacera la valeur du premier appel.
Examiner les erreurs
SearchAdView
(searchAdView
ici) contient une méthode setAdListener()
.
pour vous aider à analyser les erreurs. Dans le même Activity
:
searchAdView.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
// Called when an ad is loaded
super.onAdLoaded();
Toast.makeText(MainActivity.this, "Ad Loaded",
Toast.LENGTH_SHORT).show();
Log.d(MainActivity.class.getSimpleName(), "Ad Loaded");
}
@Override
public void onAdOpened() {
// Called when an ad opens an overlay that covers the screen
super.onAdOpened();
Toast.makeText(MainActivity.this, "Ad Opened",
Toast.LENGTH_SHORT).show();
Log.d(MainActivity.class.getSimpleName(), "Ad Opened");
}
@Override
public void onAdLeftApplication() {
// Called when an ad leaves the application
// (to go to the browser for example)
super.onAdLeftApplication();
Toast.makeText(MainActivity.this, "Ad Left Application",
Toast.LENGTH_SHORT).show();
Log.d(MainActivity.class.getSimpleName(), "Ad Left Application");
}
@Override
public void onAdFailedToLoad(int errorCode) {
// Called when an ad request failed
super.onAdFailedToLoad(errorCode);
Toast.makeText(MainActivity.this, "Ad Failed to Load: " + errorCode,
Toast.LENGTH_SHORT).show();
Log.e(MainActivity.class.getSimpleName(), "Ad Failed to Load: " +
errorCode);
}
});
Constantes utilisées dans la méthode de rappel onAdFailedToLoad()
sont décrits dans la documentation de l'API
référence.
Se préparer aux exigences concernant le communiqué sur les données sur Google Play
En mai 2021, Google Play a annoncé la nouvelle section Sécurité des données, qui est une déclaration fournie par le développeur concernant les pratiques d'une application concernant la collecte, le partage et la sécurité des données.
Cette page peut vous aider à remplir les exigences liées à cette divulgation de données concernant votre utilisation du SDK natif AFS (également applicable à AdSense pour Shopping). Sur cette page, vous trouverez des informations pour savoir si nos SDK traitent les données des utilisateurs finaux, et comment.
Nous nous efforçons d'être les plus transparents possible lorsque nous vous soutenons. Toutefois, en tant que développeur de l'application, vous êtes seul responsable de vos réponses au formulaire de la section Sécurité des données de Google Play concernant la collecte et le partage des données des utilisateurs finaux dans votre application, ainsi que vos pratiques de sécurité.
Utiliser les informations de cette page
Cette page liste uniquement les données de l'utilisateur final collectées par la dernière version du SDK.
Pour rédiger votre communiqué sur les données, vous pouvez consulter le guide sur les types de données d'Android afin de déterminer quel type de données décrit le mieux les données collectées. Dans votre communiqué, veillez également prendre en compte comment votre application spécifique partage et utilise les données collectées.
Type de données que le SDK accède au type de données et collecte
Colis:
com.google.android.gms:play-services-afs-native
com.google.ads.afsn
Données collectées automatiquement
Le SDK APR collecte automatiquement les données suivantes. Toutes les données sont transmises à Google depuis l'appareil afin de diffuser des annonces, et toutes les données sont chiffrées en transit. Les informations personnelles de l'utilisateur ne sont jamais collectées, sauf si elles sont transmises via votre application dans le cadre d'une requête utilisateur.
Données | Ces données sont collectées aux fins suivantes : |
---|---|
Adresse IP |
<ph type="x-smartling-placeholder"></ph>
Résumé:
<ph type="x-smartling-placeholder">
L'adresse IP est utilisée pour la surveillance des activités frauduleuses et des abus, ainsi que pour déterminer la position approximative de l'utilisateur. La position approximative permet ensuite de vérifier que les annonces diffusées sont conformes aux réglementations locales et de fournir des annonces correspondant à la situation géographique approximative de l'utilisateur. |
Activité dans les applications
<ph type="x-smartling-placeholder">
|
<ph type="x-smartling-placeholder"></ph>
Résumé:
<ph type="x-smartling-placeholder">
Votre application nous fournit la requête de l'utilisateur afin que nous puissions afficher des annonces sur le Réseau de Recherche en rapport avec le mot clé. Nous mesurons le nombre de vues et l'engagement (appuis) avec les annonces diffusées. |
Diagnostic |
<ph type="x-smartling-placeholder"></ph>
Résumé:
<ph type="x-smartling-placeholder">
Le SDK mesure la latence d'affichage des annonces afin de permettre l'implémentation et la mesure des améliorations du produit. Nous envoyons également des rapports d'erreur et des rapports d'erreur, et ajoutons occasionnellement d'autres outils si nécessaire pour comprendre comment les éditeurs utilisent les fonctionnalités. |
Appareil ou autres identifiants |
<ph type="x-smartling-placeholder"></ph>
Résumé:
<ph type="x-smartling-placeholder">
L'ID de l'appareil permet de surveiller les activités frauduleuses et les utilisations abusives, ainsi que de mesurer les performances des annonces. |