Home / Programmazione / Java Android / Creare dei change log in Android
Mattepuffo

Creare dei change log in Android

Creare dei change log in Android

Oggi vediamo un semplice di sistema di change log per le nostre app in Android.

Il tutto viene da qua, ed è molto semplice da usare.

Prima di tutto creiamo la classe ChangeLog; essendo un pò lunga vi posto il link dal quale potete copiarla: LINK.

A questo è importante che nel Manifest usiate anche la voce versionName, che usata appunto per specificare le versioni (ad esempio 2.0.7.3); mentre versionCode corrisponde solo alla versione "master" (ad esempio 2).

In res/values/string.xml aggiungete le seguenti voci:

    <string name="changelog_full_title">Change Log</string>
    <string name="changelog_title">What\'s New</string>
    <string name="changelog_ok_button">OK</string>
    <string name="changelog_show_full">More</string>

Queste voci verranno usate dall' AlertDialog.

Infine creiamo res/raw/changelog.txt, dove in formato HTML andiamo a creare le voci che verranno visualizzate nell'AlertDialog:

<html>
  <head>
    <style type='text/css'>
      a            { color:#a0a0e0 }
      div.title    {
          color:#C0F0C0;
          font-size:1.2em;
          font-weight:bold;
          margin-top:1em;
          margin-bottom:0.5em;
          text-align:center }
      div.subtitle {
          color:#C0F0C0;
          font-size:0.8em;
          margin-bottom:1em;
          text-align:center }
      div.freetext { color:#F0F0F0 }
      div.list     { color:#C0C0F0 }
    </style>
  </head>
  <body>
  $ 1.7
     % Versione 1.7
  _ 2013-11-16
      * Correzione visualizzazione
      * Aggiunta vibrazione
  $ 1.6
     % Versione 1.6
  _ 2013-10-13
      * Correzione bug in vista articolo
$ 1.5
  % Versione 1.5
  _ 2013-10-13
      * Aggiunta visualizzazione articolo
      * Aggiunto il Change Log
$ END_OF_CHANGE_LOG
  </body>
</html>

Sempre nel link ufficiale potete trovare una spiegazione dettagliata dei segni utilizzati.

Una cosa molto importante riguarda la versione, che deve essere uguale a versionName; quindi ad ogni versione nuova dovete modificare quello e mettere il corrispettivo in changelog.txt.

a questo punto nella nostra Activity dobbiamo controllare se da una versione ad un'altra è stata cambiata la versione:

        ChangeLog changeLog = new ChangeLog(this);
        if(changeLog.firstRun()) {
            changeLog.getLogDialog().show();
        }

Questo verifica l'ultima versione registrata, con l'ultima versione installata; se c'è discrepanza mostra l'ultimo change log.

Se vogliamo mostrare il change log completo, ad esempio selezionando una voce di menu:

ChangeLog changeLog.getFullLogDialog().show();

Questo AlertDialog mostrerà il change log completo!

Enjoy!