• Programmazione Android
  • CORSI ONLINE
  • Web Agency

Logo

Corsi di programmazione web e mobile online
Navigation
  • Home
  • CORSI ONLINE
  • Tutorial Pratici
  • GUIDE COMPLETE
    • Corso completo di C
    • Corso videogame con Cocos2d
    • Programmazione Cocoa Touch
  • Sezioni
    • Libri e manuali
    • Tips & Tricks
    • Risorse utili
    • Strumenti di Sviluppo
    • Materiale OpenSource
    • Framework
    • Guide Teoriche
    • Guide varie
    • Grafica e Design
    • iPad
    • News
    • Video Tutorial
    • Windows Phone
  • Pubblicità
  • About
    • Chi siamo
    • Pubblicazioni
    • Collabora
    • Sostieni devAPP

T#096 – Facciamoci lasciare una recensione in App Store dalla nostra applicazione con Appirater

By Andrea Busi | on 15 Giugno 2011 | 40 Comments
Senza categoria

Il sistema di recensioni e votazioni dell’AppStore è uno strumento molto utilizzato dagli utenti, ma molto spesso criticato dagli sviluppatori. Avrebbe bisogno, secondo me, di una seria rivisitazione, che permetta anche ai developer di interagire con gli utenti… ma questi sono alti discorsi!
Vi sarà spesso capitato di aprire un’applicazione e vedervi comparire un pop-up come questo, che vi invita a lasciare una recensione dell’applicazione:


t096-appirater-farsi-lasciare-recensione-app-store-iphone-ipad

Quello mostrato in figura può sicuramente essere un buon modo per invogliare gli utenti a lasciare una recensione della nostra applicazione in AppStore, che spesso è necessaria per poter sopravvivere alla grandissima competizione presente nello store.

Per fare ciò viene in nostro aiuto una classe semplice ma davvero potente: Appirater, che potete scaricare gratuitamente direttamente da GitHub. Vediamo come usarla ed integrarla durante lo sviluppo delle nostre applicazioni iPhone e iPad.

Utilizziamo Appirater

Utilizzare questa classe è davvero semplicissimo. Iniziamo scaricando la classe Appirater e inserendola all’interno del nostro progetto XCode:



Aggiungiamo, inoltre, anche il framework “SystemConfiguration”, necessario per la corretta compilazione della classe:



A questo punto dobbiamo fare in modo che venga utilizzata, per esempio, all’avvio dell’applicazione, prima che l’utente possa eseguire qualsiasi altra interazione con la nostra app. Apriamo, quindi, il nostro file “AppDelegate”, e modifichiamolo nel seguente modo:

#import "Appirater.h"

@implementation Mia_ApplicazioneAppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // definizioni e inizializzazioni varie
    // ...
    
    // avviamo il metodo della classe Appirater
    [Appirater appLaunched];
    
    return YES;
}

@end

Come vedete abbiamo aggiunto solo 2 istruzioni!! Alla riga 1 abbiamo importato la classe “Appirater.h”, mentre nel metodo “application: didFinishLaunchingWithOptions:” abbiamo richiamato il metodo “appLaunched” della classe Appirater. (non c’è bisogno di definire nessun elemento, la classe prevede un metodo statico che ci semplifica ulteriormente il lavoro).

Sarà la classe stessa che si occuperà di tutto: visualizzare il messaggio, controllare che sia passato un certo tempo dal precedente avviso e salvare la scelta dell’utente.

Per completare la configurazione apriamo il file “Appirater.h” e cambiamo il valore di “APPIRATER_APP_ID” con l’ID della nostra applicazione. Eccovi un esempio:

/*
 Place your Apple generated software id here.
 */
#define APPIRATER_APP_ID				409332404 //Orologi di Classe PLUS

Abbiamo già concluso! Davvero velocissimo vero?

Modifichiamone il comportamento

Possiamo modificare alcuni aspetti del comportamento di questa classe. Per default l’avviso viene visualizzato se l’utente utilizza la nostra applicazione per 15 volte negli ultimi 30 giorni. Se queste impostazioni ci sembrano non corrette per la nostra applicazioni, ci basterà variarne il valore, sempre all’inteno di “Appirater.h”. Le due variabili in questioni sono:

#define APPIRATER_DAYS_UNTIL_PROMPT	30		// double

#define APPIRATER_USES_UNTIL_PROMPT		15		// integer

Sempre nello stesso file potrete inoltre cambiare il messaggio che appare, ad esempio traducendolo in italiano (oppure inserendo la possibilità di localizzarlo in base alla lingua del dispositivo).

Ultima opzione, se volete (ad esempio durante il test della vostra applicazione) che il messaggio appaia ad ogni avvio dell’applicazione dovrete settare a YES questo parametro (che trovate sempre nell’header file della classe Appirater):

/*
 'YES' will show the Appirater alert everytime. Useful for testing how your message
 looks and making sure the link to your app's review page works.
 */
#define APPIRATER_DEBUG				YES

Spero che questo piccolo tutorial possa esservi utile, alla prossima! 😉

Share this story:
  • tweet

Tags: andrea busiappiratorrecensioni app storerisorse utili iOSTutorial Praticitutorial programmazione iPhone e iPad

Recent Posts

  • Parte il percorso programmatori iOS in Swift su devACADEMY.it

    20 Dicembre 2017 - 0 Comment
  • Android, crittografare dati velocemente con Encryption

    24 Settembre 2018 - 0 Comment
  • Sql2o, accesso immediato ai database tramite Java

    3 Settembre 2018 - 0 Comment
  • Okio, libreria per ottimizzare l’input/output in Java

    27 Agosto 2018 - 0 Comment

Related Posts

  • “Tutorial pratici per iOS SDK” si aggiorna alla versione 2.1

    10 Maggio 2012 - 1 Comment
  • Tutorial pratici per iOS SDK: disponibile la versione 2.0 aggiornata a iOS 5 e XCode 4.2

    16 Novembre 2011 - 6 Comments
  • T#100 – Integrare Dropbox nelle applicazioni iPhone ed iPad

    9 Settembre 2011 - 11 Comments

Author Description

23 anni, è studente di Ingegneria Informatica presso l’Università di Bergamo (laurea Magistrale). Appassionato d’informatica sin da bambino, conosce molto bene il C++, Java e l'ObjectiveC, con cui ormai programma con successo da qualche anno. Ha già scritto un ebook “Tutorial pratici per iPhone SDK”, che ha avuto un ottimo successo, e gestisce da quasi due anni BubiDevs, un piccolo blog che ha dato l’ispirazione anche a devAPP.

40 Responses to “T#096 – Facciamoci lasciare una recensione in App Store dalla nostra applicazione con Appirater”

  1. 15 Giugno 2011

    Danimartialice

    Fantastico lo faccio subito! Grazie

  2. 15 Giugno 2011

    diego

    bella chicca !!!!!

  3. 15 Giugno 2011

    cursao

    Ciao,
    molto interessante, possibile che non funzioni con la nuova release di xcode (per firmware 5.0)????

  4. 15 Giugno 2011

    daniela

    ciao Andrea, ho seguito tutto però ho un dubbio:

    /*
    Place your Apple generated software id here.
    */
    #define APPIRATER_APP_ID 436689870/iBassotto

    /*
    Your app’s name.
    */
    #define APPIRATER_APP_NAME [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString*)kCFBundleNameKey]

    /*
    in questo secondo blocco come devo inserire il nome della mia app ?

    …..anche perchè probabilmente, mancando, mi da questo errore:
    Appirater.m
    * undeclared (First use in this function) iBassotto undeclared…..
    Sto usando XCODE 4 !….

    Grazie

  5. 15 Giugno 2011

    Andrea Busi


    cursao:

    Ciao,
    molto interessante, possibile che non funzioni con la nuova release di xcode (per firmware 5.0)????

    ciao, no, il tutorial è stato scritto e testato proprio con la beta 1 dell’SDK di iOS 5.


    daniela:

    ciao Andrea, ho seguito tutto però ho un dubbio:

    /*
    Place your Apple generated software id here.
    */
    #define APPIRATER_APP_ID 436689870/iBassotto

    /*
    Your app’s name.
    */
    #define APPIRATER_APP_NAME [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString*)kCFBundleNameKey]

    /*
    in questo secondo blocco come devo inserire il nome della mia app ?

    …..anche perchè probabilmente, mancando, mi da questo errore:
    Appirater.m
    * undeclared (First use in this function) iBassotto undeclared…..
    Sto usando XCODE 4 !….

    Grazie

    non devi inserire il nome della tua applicazione, ma solo il suo ID.
    Nel tuo caso la stringa sarà:

    #define APPIRATER_APP_ID 436689870
    

    senza il /iBassotto alla fine

  6. 15 Giugno 2011

    daniela

    Ah ok perfetto …. xò da che versione è supportato ? perchè si arrabbia ancora…

    Undefined symbols for architecture armv6:
    “_SCNetworkReachabilityCreateWithAddress”, referenced from:
    -[Appirater(hidden) connectedToNetwork] in Appirater.o
    “_SCNetworkReachabilityGetFlags”, referenced from:
    -[Appirater(hidden) connectedToNetwork] in Appirater.o
    ld: symbol(s) not found for architecture armv6
    collect2: ld returned 1 exit status

    :-((

  7. 15 Giugno 2011

    Andrea Busi


    daniela:

    Ah ok perfetto …. xò da che versione è supportato ? perchè si arrabbia ancora…

    Undefined symbols for architecture armv6:
    “_SCNetworkReachabilityCreateWithAddress”, referenced from:
    -[Appirater(hidden) connectedToNetwork] in Appirater.o
    “_SCNetworkReachabilityGetFlags”, referenced from:
    -[Appirater(hidden) connectedToNetwork] in Appirater.o
    ld: symbol(s) not found for architecture armv6
    collect2: ld returned 1 exit status

    :-( (

    dimenticanza mia, se non erro questa classe fa uso di Reachability, che a sua volta richiede il framework CFNetwork.
    Aggiungilo al tuo progetto, vedrai che dovrebbe funzionare 😉

  8. 15 Giugno 2011

    daniela

    Andrea …..:-( si arrabbia ancora …….

  9. 15 Giugno 2011

    Andrea Busi


    daniela:

    Andrea …..:-( si arrabbia ancora …….

    no forse ho sbagliato io, il framework da inserire è “SystemConfiguration”.. prova e fammi sapere! 😉

  10. 15 Giugno 2011

    Davide

    fai un clean target e rifai il build.

  11. 15 Giugno 2011

    daniela

    SIIIII ! Non da più errore… sul simulatore mi sembra di aver capito che però non si può testare … Vero ??

    Grazie Andrea 😉

  12. 15 Giugno 2011

    Cursao


    Andrea Busi:


    cursao:

    Ciao,
    molto interessante, possibile che non funzioni con la nuova release di xcode (per firmware 5.0)????

    ciao, no, il tutorial è stato scritto e testato proprio con la beta 1 dell’SDK di iOS 5.


    daniela:

    ciao Andrea, ho seguito tutto però ho un dubbio:
    /*
    Place your Apple generated software id here.
    */
    #define APPIRATER_APP_ID 436689870/iBassotto
    /*
    Your app’s name.
    */
    #define APPIRATER_APP_NAME [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString*)kCFBundleNameKey]
    /*
    in questo secondo blocco come devo inserire il nome della mia app ?
    …..anche perchè probabilmente, mancando, mi da questo errore:
    Appirater.m
    * undeclared (First use in this function) iBassotto undeclared…..
    Sto usando XCODE 4 !….
    Grazie

    non devi inserire il nome della tua applicazione, ma solo il suo ID.
    Nel tuo caso la stringa sarà:

    #define APPIRATER_APP_ID 436689870

    senza il /iBassotto alla fine

    Andrea te l’ho chiesto perché mi da una montagna di errori, devo inserire un qualche framework?

  13. 15 Giugno 2011

    Andrea Busi


    Cursao:


    Andrea Busi:


    cursao:

    Ciao,
    molto interessante, possibile che non funzioni con la nuova release di xcode (per firmware 5.0)????

    ciao, no, il tutorial è stato scritto e testato proprio con la beta 1 dell’SDK di iOS 5.


    daniela:

    ciao Andrea, ho seguito tutto però ho un dubbio:
    /*
    Place your Apple generated software id here.
    */
    #define APPIRATER_APP_ID 436689870/iBassotto
    /*
    Your app’s name.
    */
    #define APPIRATER_APP_NAME [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString*)kCFBundleNameKey]
    /*
    in questo secondo blocco come devo inserire il nome della mia app ?
    …..anche perchè probabilmente, mancando, mi da questo errore:
    Appirater.m
    * undeclared (First use in this function) iBassotto undeclared…..
    Sto usando XCODE 4 !….
    Grazie

    non devi inserire il nome della tua applicazione, ma solo il suo ID.
    Nel tuo caso la stringa sarà:

    #define APPIRATER_APP_ID 436689870

    senza il /iBassotto alla fine

    Andrea te l’ho chiesto perché mi da una montagna di errori, devo inserire un qualche framework?

    si, mi ero dimenticato di specificarlo nel tutorial. Il framework da inserire è “SystemConfiguration”, vedrai che poi funzionerà senza problemi 😉

  14. 15 Giugno 2011

    Luca

    Ma l’ID dell’applicazione posso ottenerlo solo dopo la pubblicazione?? dove trovo questo ID??

  15. 15 Giugno 2011

    Andrea Busi


    Luca:

    Ma l’ID dell’applicazione posso ottenerlo solo dopo la pubblicazione?? dove trovo questo ID??

    si, lo ottieni solo dopo la pubblicazione dell’app. Lo trovi sia in iTunes Connect che nel link dell’AppStore dell’app

  16. 15 Giugno 2011

    Luca

    Trovato… ma non mi compare nessun AlertView ne’ sul simulatore ne’ sul dispositivo…. #import aggiunto e [Appirater appLaunched]; aggiunta… l’app e’ in fase di pubblicazione, ma l’ID da iTunes Connect me lo da’ gia’… hai qualche idea sul non funzionamento??

  17. 16 Giugno 2011

    Andrea Busi


    Luca:

    Trovato… ma non mi compare nessun AlertView ne’ sul simulatore ne’ sul dispositivo…. #import aggiunto e [Appirater appLaunched]; aggiunta… l’app e’ in fase di pubblicazione, ma l’ID da iTunes Connect me lo da’ gia’… hai qualche idea sul non funzionamento??

    sul simulatore è corretto che non funzioni. Sul device, invece, viene visualizzato a seconda della frequenza che hai impostato. Se vuoi visualizzarlo al primo avvio (come test) setta le due costanti a zero:

    #define APPIRATER_DAYS_UNTIL_PROMPT	0		// double
     
    #define APPIRATER_USES_UNTIL_PROMPT		0		// integer
    
  18. 16 Giugno 2011

    Antonio

    scusate ma sono nuovo in questo campo.
    ma se l’id posso averlo dopo la pubblicazione come faccio ad integrare subito questa cosa?

    è nato prima l’uovo o la gallina?

  19. 16 Giugno 2011

    Andrea Busi


    Antonio:

    scusate ma sono nuovo in questo campo.
    ma se l’id posso averlo dopo la pubblicazione come faccio ad integrare subito questa cosa?

    è nato prima l’uovo o la gallina?

    se non sbaglio l’ID ti viene assegnato appena crei una nuova app in iTunes Connect, quindi prima di sottomettere l’app.

  20. 16 Giugno 2011

    Luca

    Ah… avevo capito il senso di quelle #define alla rovescia…. cioè che non ti si visualizzava più quel messaggio dopo 30gg e dopo 15 volte che si aveva aperto l’app e non il viceversa!!
    Scusa sono io che sono un po’ spento di testa!
    Complimenti per il tutorial!!!

  21. 16 Giugno 2011

    imperiolini

    Ciao Andrea quando buildo l’app sull’iPhone mi esce questa cosa: http://imageshack.us/f/546/32849509.png/

  22. 16 Giugno 2011

    giorgio


    Andrea Busi:


    Luca:

    Trovato… ma non mi compare nessun AlertView ne’ sul simulatore ne’ sul dispositivo…. #import aggiunto e [Appirater appLaunched]; aggiunta… l’app e’ in fase di pubblicazione, ma l’ID da iTunes Connect me lo da’ gia’… hai qualche idea sul non funzionamento??

    sul simulatore è corretto che non funzioni. Sul device, invece, viene visualizzato a seconda della frequenza che hai impostato. Se vuoi visualizzarlo al primo avvio (come test) setta le due costanti a zero:

    #define APPIRATER_DAYS_UNTIL_PROMPT	0		// double
     
    #define APPIRATER_USES_UNTIL_PROMPT		0		// integer

    oppure mettere a YES la modalità debug (ritorna sempre un YES in fase di checking)
    #define APPIRATER_DEBUG YES

  23. 16 Giugno 2011

    Andrea Busi


    imperiolini:

    Ciao Andrea quando buildo l’app sull’iPhone mi esce questa cosa: http://imageshack.us/f/546/32849509.png/

    controlla l’ID dell’app che hai inserito, forse il tuo errore sta li..

  24. 16 Giugno 2011

    Andrea Busi


    giorgio:


    Andrea Busi:


    Luca:

    Trovato… ma non mi compare nessun AlertView ne’ sul simulatore ne’ sul dispositivo…. #import aggiunto e [Appirater appLaunched]; aggiunta… l’app e’ in fase di pubblicazione, ma l’ID da iTunes Connect me lo da’ gia’… hai qualche idea sul non funzionamento??

    sul simulatore è corretto che non funzioni. Sul device, invece, viene visualizzato a seconda della frequenza che hai impostato. Se vuoi visualizzarlo al primo avvio (come test) setta le due costanti a zero:

    #define APPIRATER_DAYS_UNTIL_PROMPT	0		// double
     
    #define APPIRATER_USES_UNTIL_PROMPT		0		// integer

    oppure mettere a YES la modalità debug (ritorna sempre un YES in fase di checking)
    #define APPIRATER_DEBUG YES

    grazie mille, non mi ero accorto di questa opzione. L’ho appena inserita nel tutorial 😉

  25. 16 Giugno 2011

    giorgio

    Se vuoi far


    Andrea Busi:


    giorgio:


    Andrea Busi:


    Luca:

    Trovato… ma non mi compare nessun AlertView ne’ sul simulatore ne’ sul dispositivo…. #import aggiunto e [Appirater appLaunched]; aggiunta… l’app e’ in fase di pubblicazione, ma l’ID da iTunes Connect me lo da’ gia’… hai qualche idea sul non funzionamento??

    sul simulatore è corretto che non funzioni. Sul device, invece, viene visualizzato a seconda della frequenza che hai impostato. Se vuoi visualizzarlo al primo avvio (come test) setta le due costanti a zero:

    #define APPIRATER_DAYS_UNTIL_PROMPT	0		// double
     
    #define APPIRATER_USES_UNTIL_PROMPT		0		// integer

    oppure mettere a YES la modalità debug (ritorna sempre un YES in fase di checking)
    #define APPIRATER_DEBUG YES

    grazie mille, non mi ero accorto di questa opzione. L’ho appena inserita nel tutorial

    Ho visto che ci sono già tutorial inerenti la localizzazione su devapp, in questo caso nell’header durante la definizione dei messaggi / bottoni della alertView potete localizzare il vostro messaggio con (per esempio)

    #define APPIRATER_MESSAGE NSLocalizedString(@”rate_body”, @””)

    e localizzare rate_body in piu lingue, penso sia utile inserirlo nel tutorial.

  26. 16 Giugno 2011

    Luca

    Scusate, ma ho un errore sull’APPID; la mia app è ancora in fase di lavorazione e su iTunesConnect l’ID è un codice alfanumerico e non numerico e questo genera errore

  27. 16 Giugno 2011

    Andrea Busi


    Luca:

    Scusate, ma ho un errore sull’APPID; la mia app è ancora in fase di lavorazione e su iTunesConnect l’ID è un codice alfanumerico e non numerico e questo genera errore

    non mi ricordo se l’AppID viene assegnato solo dopo l’approvazione dell’applicazione. Se fosse così purtroppo sei costretto ad implementare questa funzione solo con un aggiornamento successivo dell’app.

  28. 21 Giugno 2011

    Piersoft

    Andrea, funziona tutto.

    Per testarlo confermo di mettere a 0 le due variabili. l’AppID viene assegnato subito all’atto dell’invio dell’app in Appstore ma non puoi visualizzare ovviamente la sezione delle recensioni se prima l’app non è stata approvata.

    Il framework necessario è System ect non altri.

  29. 24 Giugno 2011

    Byteros

    Complimenti innanzitutto.
    Ho una domanda…
    Ma se l’utente recensisce l’app… il popup continuerà ad uscire ancora?

  30. 26 Giugno 2011

    Marcello

    Per byteros
    Se risponde “no grazie” al pop-up, non viene più fuori fino all’upgrade dell’App.
    Ciao
    Marcello

  31. 25 Settembre 2011

    andrea

    ciao!
    complimenti per il tutoria! Ho seguito le tue indicazioni tutto funziona ma… dopo il pop-up non mi parte più la mia app. Cosa sbaglio?
    grazie
    Andrea

  32. 29 Settembre 2011

    Andrea Busi


    andrea:

    ciao!
    complimenti per il tutoria! Ho seguito le tue indicazioni tutto funziona ma… dopo il pop-up non mi parte più la mia app. Cosa sbaglio?
    grazie
    Andrea

    Ciao!
    Strano come comportamento, il pop-up non dovrebbe interrompere la normale esecuzione del programma. Se non trovi dove sia il problema puoi spostare il codice necessario dall’AppDelegate al primo ViewController che viene visualizzato, in questo caso non dovresti assolutamente aver problemi. Prova e fammi sapere 😉

  33. 19 Ottobre 2011

    ema1972

    Ciao, come prima cosa grazie per il tutorial, ho uno stranissimo problema con la mia app se la esegue sul simulatore funziona alla perfezione, posso anche testare il pop-up se lo esegue su iPad o iPhone ricevo il messaggio di errore come se i framework non fossero lincati:

    ld: warning: ignoring file /Users/XXX/YYY con l’iPad/PDF-Reader/SystemConfiguration.framework/SystemConfiguration, missing required architecture armv7 in file

    “_SCNetworkReachabilityCreateWithAddress”, referenced from:

    -[Appirater(hidden) connectedToNetwork] in Appirater.o

    “_SCNetworkReachabilityGetFlags”, referenced from:

    -[Appirater(hidden) connectedToNetwork] in Appirater.o

    ld: symbol(s) not found for architecture armv7

    collect2: ld returned 1 exit status

    Potete aiutarmi, grazie

    Emanuele

  34. 21 Ottobre 2011

    Andrea Busi


    ema1972:

    Ciao, come prima cosa grazie per il tutorial, ho uno stranissimo problema con la mia app se la esegue sul simulatore funziona alla perfezione, posso anche testare il pop-up se lo esegue su iPad o iPhone ricevo il messaggio di errore come se i framework non fossero lincati:
    ld: warning: ignoring file /Users/XXX/YYY con l’iPad/PDF-Reader/SystemConfiguration.framework/SystemConfiguration, missing required architecture armv7 in file
    “_SCNetworkReachabilityCreateWithAddress”, referenced from:
    -[Appirater(hidden) connectedToNetwork] in Appirater.o
    “_SCNetworkReachabilityGetFlags”, referenced from:
    -[Appirater(hidden) connectedToNetwork] in Appirater.o
    ld: symbol(s) not found for architecture armv7
    collect2: ld returned 1 exit status
    Potete aiutarmi, grazie
    Emanuele

    Ciao, strano come problema. Prova a rimuovere il framework SystemConfiguration, a fare un Clean del progetto e poi a reinserire il framework, vediamo se migliora qualcosa..

  35. 13 Novembre 2011

    ema1972

    Ciao per pigrizia ho provato un’altra soluzione che mi permetto di consigliare per la semplicità e la velocità di implementazione:

    https://github.com/nicklockwood/iRate

    sinceramente non saprei paragonarla ad Appirater ma il suo lavoro lo fa senza dover aggiungere particolare Framework

    ciao

    Ema

  36. 28 Novembre 2011

    Andrea Busi


    ema1972:

    Ciao per pigrizia ho provato un’altra soluzione che mi permetto di consigliare per la semplicità e la velocità di implementazione:
    https://github.com/nicklockwood/iRate
    sinceramente non saprei paragonarla ad Appirater ma il suo lavoro lo fa senza dover aggiungere particolare Framework
    ciao
    Ema

    Grazie della segnalazione. Non ho avuto modo nemmeno io di provarla, ma penso che in sostanza facciano la stessa cosa. Appena riesco la provo e faccio un confronto, grazie della segnalazione! 😉

  37. 12 Dicembre 2011

    Byteros

    Non vorrei sbagliarmi ma credo che ci sia da fare una correzione.
    Le due variabili hanno un significato diverso da come viene spiegato nel tutorial, ho interpretato in maniera diversa il commento in inglese che sta nel file .h :

    #define APPIRATER_DAYS_UNTIL_PROMPT 30 // double

    #define APPIRATER_USES_UNTIL_PROMPT 15 // integer

    La prima variabile indica “quanti giorni devono passare prima che appaia il messaggio”
    La seconda invece indica quante volte bisogna aprire l’app prima che appaia il messaggio.

    Le due variabili sono in OR tra loro, nel senso che il messaggio apparirà o raggiunto/superato il num di giorni oppure raggiunto/superato il numero di volte in cui viene eseguita l’app.

    Ho testato l’app e anche leggendo il codice credo di non sbagliarmi.

    Cmq un ottimo tutorial, le utilizzerò spesso.
    Grazie devapp.

  38. 7 Gennaio 2012

    andrea

    ciao scusa non ho chiaro questo passaggio

    #define APPIRATER_APP_ID 436689870

    -Ancora non pubblico l’app ….

  39. 29 Gennaio 2012

    Andrea Busi


    andrea:

    ciao scusa non ho chiaro questo passaggio
    #define APPIRATER_APP_ID 436689870
    -Ancora non pubblico l’app ….

    Ciao,
    semplicemente vai in iTunes Connect e crei la tua applicazione, in modo che ti venga subito creato l’ID dell’applicazione. Poi potrai caricarla ed inviarla ad Apple per l’approvazione quando vorrai tu 😉
    PS: casomai tieni questo passaggio alla fine, così vai sul sicuro..

  40. 16 Settembre 2012

    Francesco

    Ciao scusate adesso il file appirater header e main sono leggermente diversi, io non sono molto pratico: potreste gentilmente aggiornare la vostra guida?
    io non riesco ad impostarlo correttamente 🙁
    grazie!!!

Leave a Reply

Your email address will not be published. Required fields are marked *


*
*

Corso online di programmazione android e java

SEZIONI

  • Android
  • Comunicazioni
  • Contest
  • Corsi ed Eventi
  • Corso completo di C
  • Corso programmazione videogiochi
  • Framework
  • Grafica e Design
  • Guida rapida alla programmazione Cocoa Touch
  • Guide Teoriche
  • Guide varie
  • iPad
  • Le nostre applicazioni
  • Libri e manuali
  • Materiale OpenSource
  • News
  • Pillole di C++
  • Progetti completi
  • Risorse utili
  • Strumenti di Sviluppo
  • Swift
  • Tips & Tricks
  • Tutorial Pratici
  • Video Tutorial
  • Windows Phone

Siti Amici

  • Adrirobot
  • Allmobileworld
  • Apple Notizie
  • Apple Tribù
  • Avvocato360
  • Blog informatico 360°
  • bubi devs
  • fotogriPhone
  • GiovaTech
  • iApp-Mac
  • iOS Developer Program
  • iPodMania
  • MelaRumors
  • Meritocracy
  • SoloTablet
  • TecnoUser
  • Privacy & Cookie Policy
©2009-2018 devAPP - All Rights Reserved | Contattaci
devAPP.it è un progetto di DEVAPP S.R.L. - Web & Mobile Agency di Torino
Str. Volpiano, 54 - 10040 Leini (TO) - C.F. e P.IVA 11263180017 - REA TO1199665 - Cap. Soc. € 10.000,00 i.v.

devACADEMY.it

Vuoi imparare a programmare?

Iscriviti e accedi a TUTTI i corsi con un’unica iscrizione.
Oltre 70 corsi e migliaia di videolezioni online e in italiano a tua disposizione.

ISCRIVITI SUBITO