1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

Formulaire de consentement à la publicité d'Admob

Discussion dans 'Windev Mobile' créé par clarionero, Jan 6, 2019.

  1. clarionero

    clarionero New Member

    Inscrit:
    Juin 5, 2018
    Messages:
    5
    J'aime reçus:
    1
    Bonjour, est-ce que quelqu'un à WM a mis en œuvre le formulaire de consentement afin de faire de la publicité sur une demande ? J'espérais que WM24 aurait déjà cette fonctionnalité implémentée, mais pour autant que je puisse voir, le contrôle publicitaire de WM24 n'a pas changé depuis WM23.

    J'ai essayé d'implémenter le formulaire de consentement à partir du code Google mais jusqu'à présent, je n'ai pas réussi à le faire fonctionner à partir de WM.

    Salutations

    Ruben

    PS :

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
    #1 clarionero, Jan 6, 2019
    Dernière édition par un modérateur: Jan 6, 2019
    Tags:
  2. popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    1,004
    J'aime reçus:
    671
    Salut @Ruben ,
    Le lien que tu propose ne fournit pas directement le code.
    De plus Google propose son système pour iOS , Android et Windows Aps.
    Peut tu mettre directement le code que tu souhaite ou un lien direct vers ce code.
    Merci.
     
  3. clarionero

    clarionero New Member

    Inscrit:
    Juin 5, 2018
    Messages:
    5
    J'aime reçus:
    1
    Salut,

    Le code Google que j'ai testé est basé sur

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Salutations

    Ruben

    Edit: Mon code actuel, basé sur ce lien est :

    import java.net.URL;
    import java.net.MalformedURLException;
    import com.google.ads.consent.*;

    public static void VerificarConsentimientoAdmobGPRD_Google()
    {

    ConsentInformation consentInformation = ConsentInformation.getInstance(getApplicationContext());
    String[] publisherIds = {"pub-xxxxxxxxxxxxxxxxxxxxxxxxx"};
    consentInformation.requestConsentInfoUpdate(publisherIds, new ConsentInfoUpdateListener() {
    @Override
    public void onConsentInfoUpdated(ConsentStatus consentStatus) {
    // User's consent status successfully updated.
    if (ConsentInformation.getInstance(getApplicationContext()).isRequestLocationInEeaOrUnknown() == true){
    // UE
    if (consentStatus == ConsentStatus.PERSONALIZED || consentStatus == ConsentStatus.NON_PERSONALIZED){
    // Usuario ya dio su consentimiento
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Usuario ya dio su consentimiento");
    }
    else {
    // Debe obtenerse el consentimiento
    URL privacyUrl = null;
    try {
    // TODO: Replace with your app's privacy policy URL.
    privacyUrl = new URL("

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ");
    } catch (MalformedURLException e) {
    e.printStackTrace();
    // Handle error.
    }

    form = new ConsentForm.Builder(getApplicationContext(), privacyUrl)
    .withListener(new ConsentFormListener() {
    @Override
    public void onConsentFormLoaded() {
    // Consent form loaded successfully.
    //callWLProcedure("COL_GlobalProcedures.Msg","Consentimiento","Form Cargado");
    showConsentForm();
    }

    @Override
    public void onConsentFormOpened() {
    // Consent form was displayed.
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Form Mostrado");
    }

    @Override
    public void onConsentFormClosed(
    ConsentStatus consentStatus, Boolean userPrefersAdFree) {
    // Consent form was closed.
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Form Cerrado");
    }

    @Override
    public void onConsentFormError(String errorDescription) {
    // Consent form error.
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Form Error:" + errorDescription);
    }
    })
    .withPersonalizedAdsOption()
    .withNonPersonalizedAdsOption()
    .withAdFreeOption()
    .build();

    form.load();




    }
    }
    else {
    // no UE
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","No UE");
    }
    }

    @Override
    public void onFailedToUpdateConsentInfo(String errorDescription) {
    // User's consent status failed to update.
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Fallo actualizando el estado");
    }
    });


    }

    static ConsentForm form;
    private static void showConsentForm(){
    if (form == null) {
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento", "Consent form is null");
    }
    if (form != null) {
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento", "Showing consent form");
    form.show();
    } else {
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento", "Not Showing consent form");
    }
    }

    Tout fonctionne bien, mais lorsque vous appelez la procédure pour montrer la forme, l'application se ferme.
     
    #3 clarionero, Jan 6, 2019
    Dernière édition par un modérateur: Jan 6, 2019
  4. popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    1,004
    J'aime reçus:
    671
    Malheureusement, je n'y arrive pas non plus le lien propose aussi un formulaire sous forme de page web.
    Mais je n'y arrive pas.
    Si quelqu'un d'autre peut aider, il est le bienvenue.
    Bien sur il faut plutôt mettre en variable publisherIds et le mettre au début du projet en dur.
    Bien sur tu appel COL_GlobalProceduresGPRD_Google.Msg
    si tu peut mettre le code de ce msg , ce serait un plus.
     
  5. clarionero

    clarionero New Member

    Inscrit:
    Juin 5, 2018
    Messages:
    5
    J'aime reçus:
    1
    Bonjour.

    COL_GlobalProceduresGPRD_Google.Msg est seulement pour afficher un message montrant l'état du processus. Il contient simplement un Info() avec les textes qui sont envoyés.

    Ce code fonctionne bien jusqu'au moment où le formulaire doit être affiché (showConsentForm () ; ). A ce moment, l'application se ferme.

    Personne n'a jamais publié d'application avec des annonces Google Play ?

    J'ai contacté le service PcSoft pour leur poser des questions à ce sujet. Ils ne savaient rien à ce sujet. Ils ne savaient pas qu'un tel besoin existait ou qu'il devrait déjà être mis en œuvre par le GPRD. Ils m'ont assuré qu'ils donneront bientôt une solution à ce problème.

    Salutations

    Rubén
     
  6. popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    1,004
    J'aime reçus:
    671
    Le problème avec Pcsoft qu'il ne donneront la réponse que pour la version 24.
     
  7. clarionero

    clarionero New Member

    Inscrit:
    Juin 5, 2018
    Messages:
    5
    J'aime reçus:
    1
    Bonjour, le code que je vais joindre affiche déjà correctement le formulaire de consentement Google. Le code doit être ajouté afin d'informer Google des options choisies par l'utilisateur. De plus, les contrôles de la publicité doivent tenir compte de ces options au moment de demander de la publicité.



    import java.net.URL;
    import java.net.MalformedURLException;
    import com.google.ads.consent.*;



    public static void VerificarConsentimientoAdmobGPRD_Google()
    {

    ConsentInformation consentInformation = ConsentInformation.getInstance(getCurrentActivity());

    if (bDebug==true){
    ConsentInformation.getInstance(getCurrentActivity()).addTestDevice("2E34AF58B256EC62CA580546E1F1F7E0");
    // Geography appears as in EEA for test devices.
    ConsentInformation.getInstance(getCurrentActivity()).setDebugGeography(DebugGeography.DEBUG_GEOGRAPHY_EEA);
    // Geography appears as not in EEA for debug devices.
    //ConsentInformation.getInstance(getCurrentActivity()).setDebugGeography(DebugGeography.DEBUG_GEOGRAPHY_NOT_EEA);
    }

    String[] publisherIds = {"pub-xxxxxxxxxxxx"};
    consentInformation.requestConsentInfoUpdate(publisherIds, new ConsentInfoUpdateListener() {
    @Override
    public void onConsentInfoUpdated(ConsentStatus consentStatus) {
    // User's consent status successfully updated.
    if (ConsentInformation.getInstance(getCurrentActivity()).isRequestLocationInEeaOrUnknown() == true){
    // UE
    if (consentStatus == ConsentStatus.PERSONALIZED || consentStatus == ConsentStatus.NON_PERSONALIZED){
    // Usuario ya dio su consentimiento
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Usuario ya dio su consentimiento");
    }
    else {
    // Debe obtenerse el consentimiento
    URL privacyUrl = null;
    try {
    // TODO: Replace with your app's privacy policy URL.
    privacyUrl = new URL("

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ");
    } catch (MalformedURLException e) {
    e.printStackTrace();
    // Handle error.
    }

    form = new ConsentForm.Builder(getCurrentActivity(), privacyUrl)
    .withListener(new ConsentFormListener() {
    @Override
    public void onConsentFormLoaded() {
    // Consent form loaded successfully.
    //callWLProcedure("COL_GlobalProcedures.Msg","Consentimiento","Form Cargado");
    showConsentForm();
    }

    @Override
    public void onConsentFormOpened() {
    // Consent form was displayed.
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Form Mostrado");
    }

    @Override
    public void onConsentFormClosed(
    ConsentStatus consentStatus, Boolean userPrefersAdFree) {
    // Consent form was closed.
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Form Cerrado");
    }

    @Override
    public void onConsentFormError(String errorDescription) {
    // Consent form error.
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Form Error:" + errorDescription);
    }
    })
    .withPersonalizedAdsOption()
    .withNonPersonalizedAdsOption()
    .withAdFreeOption()
    .build();

    form.load();

    }
    }
    else {
    // no UE
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","No UE");
    }
    }

    @Override
    public void onFailedToUpdateConsentInfo(String errorDescription) {
    // User's consent status failed to update.
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento","Fallo actualizando el estado");
    }
    });


    }

    static ConsentForm form;
    static boolean bDebug = true;

    private static void showConsentForm(){
    if (form == null) {
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento", "Consent form is null");
    }
    if (form != null) {
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento", "Showing consent form");
    form.show();
    } else {
    callWLProcedure("COL_GlobalProceduresGPRD_Google.Msg","Consentimiento", "Not Showing consent form");
    }
    }

    Resources:

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Salut


    Rubén
     
    popoy apprécie ceci.

Partager cette page

Chargement...