1.0.1 • Published 5 years ago

capacitor-apprate-gfc v1.0.1

Weekly downloads
3
License
MIT
Repository
github
Last release
5 years ago

AppRateGFC - Android

Version Npm

Le plugin capacitor-apprate-gfc est une implementation native qui permet aux utilisateurs d'évaluer facilement votre application. Vous pouvez maintenant utiliser ce package comme plugin Ionic Capacitor dans votre application.

Soutenez nos développements

Votre don nous permettra de développer plus de plugin open source mais également à maintenir ceux déjà publiés pour garantir une compatibilité avec les futures versions d'android, d'ios et de capacitor. Merci de votre soutien !

Je fais un don

Sommaire

  1. Plateformes prise en charge
  2. Installation
    2.1 Récuperation du package sur npm
    2.2 Ajout du plugin dans votre MainActivity.java
  3. Screenshot
  4. Méthodes du plugin
  5. Interfaces du plugin
    5.1 APPRATE_OPTS
    5.2 APPRATE_OPTS_CHECK
    5.3 BUTTON_STYLE
    5.4 APPRATE_INIT
    5.5 APP_PUBLISH_STATUT
    5.6 APPRATE_STATUT
  6. Enums du plugin
    6.1 MARKET_URL
    6.2 STATUT_BTN
  7. Utilisation du plugin
    7.1 Intégration du plugin
    7.2 Méthode init(options: APPRATE_OPTS)
    7.3 Méthode checkAppStatus(options: APPRATE_OPTS_CHECK)
    7.4 Méthode showDirectly()
    7.5 Méthode addListener('positifRateEvent')
    7.6 Méthode addListener('netralRateEvent')
    7.7 Méthode addListener('negativeRateEvent')
    7.8 Méthode addListener('appIsPublishEvent')
    7.9 Méthode addListener('isAllReadyShow')
  8. Ajouter une icone dans la popup
  9. Demo
  10. Nos autres plugins

1. Plateformes prise en charge

  • Android

2. Installation

2.1 Récuperation du package sur npm

npm install capacitor-apprate-gfc --save

2.2 Ajout du plugin dans votre MainActivity.java

Le fichier MainActivity est disponible dans app/java/packageid/ depuis android studio

    // Autres imports...
    import com.gfc.apprategfc.AppRateGFC;
    
    public class MainActivity extends BridgeActivity {
      @Override
      public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    
        this.init(savedInstanceState, new ArrayList<Class<? extends Plugin>>() {{
    
          add(AppRateGFC.class);  // Ajout du plugin AppRateGFC 
    
        }});
      }
    }

3. Screenshot

AppRate BasicAppRate Dark ModeAppRate avec AppIcon
Screenshot_1Screenshot_2Screenshot_3

4. Méthodes du plugin

MethodesAndroid
init(options: APPRATE_OPTS): Promise<APPRATE_INIT>;Disponible
checkAppStatus(options: APPRATE_OPTS_CHECK): Promise<APP_PUBLISH_STATUT>;Disponible
showDirectly(): Promise<{}>;Disponible
addListener(eventName: 'positifRateEvent', listenerFunc: (statut: APPRATE_STATUT) => void): PluginListenerHandle;Disponible
addListener(eventName: 'netralRateEvent', listenerFunc: (statut: APPRATE_STATUT) => void): PluginListenerHandle;Disponible
addListener(eventName: 'negativeRateEvent', listenerFunc: (statut: APPRATE_STATUT) => void): PluginListenerHandle;Disponible
addListener(eventName: 'appIsPublishEvent', listenerFunc: (statut: APP_PUBLISH_STATUT) => void): PluginListenerHandle;Disponible
addListener(eventName: 'isAllReadyShow', listenerFunc: (statut: boolean) => void): PluginListenerHandle;Disponible

5. Interfaces du plugin

5.1 APPRATE_OPTS

Nécessaire pour la méthode init()

PropriétéEtatTypeDefautCommentaire
appNameObligatoirestringnullRenseigne le nom de l'application
appPackageIdObligatoirestringnullRenseigne l'id du package (ex: com.mon.application)
storeUrlObligatoireMARKET_URLObjectRenseigne le store où est hébergée l'application
titleAppRateObligatoirestringnullRenseigne le titre (en rajoutant %@ dans le titre il sera remplacé par appName)
messageAppRateObligatoirestringnullRenseigne le message (en rajoutant %@ dans le message, il sera remplacé par appName)
untilPromptObligatoirenumbernullRenseigne le nombre d'ouverture de l'application avant affichage de la popup (conseil : 5 ouvertures)
daysUntilPromptObligatoirenumbernullRenseigne le nombre de jour avant affichage de la popup (conseil : 3 ouvertures)
positifButtonStyleObligatoireBUTTON_STYLEObjectRenseigne le texte (Obligatoire) et la couleur (Optionel) du bouton positif (ouverture du store)
netralButtonStyleObligatoireBUTTON_STYLEObjectRenseigne le texte (Obligatoire) et la couleur (Optionel) du bouton neutre (rappel)
negatifButtonStyleObligatoireBUTTON_STYLEObjectRenseigne le texte (Obligatoire) et la couleur (Optionel) du bouton negatif (ne s'affichera plus jamais)
darkModeOptionelbooleanfalseReseigne l'utilisation du theme Sombre
addAppIconOptionelbooleanfalseRenseigne le souhait d'afficher l'icon de l'application dans la popup
backgroundColorOptionelstringnullRenseigne la couleur de font de la popup. Les couleurs devront commencer par # et contenir 7 caractères (ex: #4A4747)

Par defaut le thème sombre et le thème basic contient des couleurs. Si vous ne renseignez aucunes couleurs les boutons et le font utilisera ceux present dans lestyle de la popup. Chaque couleur peut etre changée.

5.2 APPRATE_OPTS_CHECK

Nécessaire pour la méthode checkAppStatus()

PropriétéEtatTypeDefautCommentaire
appPackageIdObligatoirestringnullRenseigne l'id du package (ex: com.mon.application)
storeUrlObligatoireMARKET_URLObjectRenseigne le store où est hébergée l'application

5.3 BUTTON_STYLE

Nécessaire pour la méthode init()

PropriétéEtatTypeDefautCommentaire
buttonActionTextObligatoirestringnullRenseigne le text du bouton
buttonActionColorOptionelstring'#E35A5A'Les couleurs devront commencer par # et contenir 7 caractères (ex: #FFFFFF)

5.4 APPRATE_INIT

Nécessaire pour la méthode init()

PropriétéTypeCommentaire
appRateInitbooleanAppRate est initialisé ou non

5.5 APP_PUBLISH_STATUT

Nécessaire pour la méthode checkAppStatus()

PropriétéTypeCommentaire
appOnPlaySTATUT_APPEst present ou non dans le store

5.6 APPRATE_STATUT

Nécessaire pour les evenement positifRateEvent, netralRateEvent, negativeRateEvent

PropriétéTypeCommentaire
rateStatutSTATUT_BTNBouton cliqué par l'utilisateur

6. Enums du plugin

6.1 MARKET_URL

PropriétéValeur
GOOGLE_PLAY_MARKET'market://details?id='
GOOGLE_PLAY_URL'https://play.google.com/store/apps/details?id='
APPLE_STORE_MARKET'itms-apps://itunes.apple.com/app/id'
APPLE_STORE_URL'https://itunes.apple.com/en/lookup?bundleId='
AMAZON_STORE_ANDROID_URL'https://www.amazon.com/gp/mas/dl/android?p='
AMAZON_STORE_MARKET_ANDROID'amzn://apps/android?p='
HUAWEI_APP_GALLERY'appmarket://details?id='

6.2 STATUT_BTN

PropriétéValeur
POSITIVE0
NETRAL1
NEGATIVE2

7. Utilisation du plugin

7.1 Intégration du plugin

// Autres imports...
import{Plugins} from '@capacitor/core'
const {AppRateGFC} = Plugins;

7.2 Méthode init(options: APPRATE_OPTS)

    const optionAppRate: APPRATE_OPTS  = {
                  appName: 'AppRateGFCDemo',
                  appPackageId: 'com.gfc.apprategfcdemo',
                  storeUrl: MARKET_URL.GOOGLE_PLAY_MARKET,
                  titleAppRate: 'Voudriez-vous noter %@ ?',
                  messageAppRate: 'Si vous aimez utiliser %@ , voulez-vous prendre un moment pour l\'évaluer? Il ne faudra pas plus d\'une minute. Merci pour votre aide!',
                  untilPrompt: 5,
                  daysUntilPrompt: 5,
                  positifButtonStyle: {
                      buttonActionText: 'Oui',
                      buttonActionColor: '#09A495',
                  },
                  netralButtonStyle: {
                      buttonActionText: 'Plus tard',
                      buttonActionColor: '#313030',
                  },
                  negatifButtonStyle: {
                      buttonActionText: 'Non',
                      buttonActionColor: '#B92F2F',
                  },
                  darkMode: false,
                  addAppIcon: false,
                  backgroundColor: '#FFFFFF'
     };

    AppRateGFC.init(optionAppRate).then((result: APPRATE_INIT) => {
                if (result.appRateInit) {
                    // Votre code...
                }
            }).catch((error) => {
                // Votre code...
            });

7.3 Méthode checkAppStatus(options: APPRATE_OPTS_CHECK)

    const optsCheck = {
                    appPackageId: 'com.gfc.apprategfcdemo',
                    storeUrl: MARKET_URL.GOOGLE_PLAY_MARKET,
    };

    AppRateGFC.checkAppStatus(optsCheck).catch((error) => ({
        // Votre code...
    }));

7.4 Méthode showDirectly()

Pensez a lancer la methode init() avant d'appeler showDirectly()

   
    AppRateGFC.showDirectly().catch((error) => ({
        // Votre code...
    }));

7.5 Méthode addListener('positifRateEvent')

Cette évenement est déclenché lorsque l'utilisateur clique sur le bouton positif

    ngOnInit() {
        AppRateGFC.addListener('positifRateEvent', (statut: APPRATE_STATUT) => {
            // votre code...
        });
    }

7.6 Méthode addListener('netralRateEvent')

Cette évenement est déclenché lorsque l'utilisateur clique sur le bouton neutre

    ngOnInit() {
        AppRateGFC.addListener('netralRateEvent', (statut: APPRATE_STATUT) => {
            // votre code...
        });
    }

7.7 Méthode addListener('negativeRateEvent')

Cette évenement est déclenché lorsque l'utilisateur clique sur le bouton négatif

    ngOnInit() {
        AppRateGFC.addListener('negativeRateEvent', (statut: APPRATE_STATUT) => {
            // votre code...
        });
    }

7.8 Méthode addListener('appIsPublishEvent')

Cette évenement est déclenché lorsque l'on utilise la methode checkAppStatus(options: APPRATE_OPTS_CHECK)

    ngOnInit() {
        AppRateGFC.addListener('appIsPublishEvent', (statut: APP_PUBLISH_STATUT) => {
            if(status.appOnPlay)
            {
                // votre code...
            }           
        });
    }

7.9 Méthode addListener('isAllReadyShow')

Cette évenement est déclenché si l'utilisateur a déjà reçu la demande et s'il a cliqué le bouton positif ou negatif

    ngOnInit() {
        AppRateGFC.addListener('isAllReadyShow', (statut: boolean) => {
            // votre code...
        });
    }

8. Ajouter une icone dans la popup

Si vous souhaitez ajouter l'icone de votre application dans la popup il vous suffit de faire un clic droit sur le repertoire res dans capacitor-apprate-gfc/android/src/main/res Selectionner New -> Image Asset et ajouter l'icone de votre application.

9. Demo du plugin

Téléchargez notre demo.

10. Nos autres plugins

NomPackageVersionPlateformes
SnackBarGFCcapacitor-snackbar-gfcVersion NpmAndroid
DateTimePickerGFCcapacitor-datetimepicker-gfcVersion NpmAndroid
CalendarEventGFCcapacitor-calendarevent-gfcVersion NpmAndroid