Xiaomi, negli ultimi anni, sta producendo sempre più prodotti interessanti, a partire dai vari telefoni creati fino alla Mi Band, un dispositivo wearable che per un costo irrisorio ha le stesse funzioni di un normale fitness tracker quale il Jawbone Up ma con un'autonomia di oltre due mesi. Attualmente ne esistono due versioni

  1. La Mi Band 1, ovvero senza cardiofrequenzimetro;
  2. La Mi Band 1S, con cardiofrequenzimetro.

La funzione più interessante, a mio parere, era la possibilità di impostare una sveglia intelligente (la funzione "Early Bid Allarm") che sceglieva lei quando svegliarci, in base all'andamento del sonno. A partire dalla versione 2.0 della companion app però, l'azienda cinese ha inspiegabilmente rimosso questa   caratteristica, lasciando solo la tradizionale sveglia.

Con questa guida, rivolta ai soli utenti iOS (per gli utenti Android basta semplicemente cercare su google l'apk di versioni antecedenti alla 2.0), tenteremo di ripristinare questa funzione attraverso un downgrade.

1. L'occorrente.

Per procedere, sono necessari i seguenti elementi

  1. Un qualsiasi Mac in grado di supportare la versione più recente di Xcode (scaricabile tramite il Mac App Store);
  2. Questo pacchetto.

N.B.: Sfortunatamente, la lingua dell'applicazione dopo questo procedimento diventerà in parte russa: è un compromesso che bisogna accettare, attualmente, per riavere l'Early Bid Allarm.

2. Creazione di identità su Xcode.

Come prima cosa, è necessario aprire Xcode e creare un nuovo progetto, selezionando come template il "Single View Application". Arriverete quindi ad una schermata simile

In "Product Name" e "Organization Identifier" inserite qualunque cosa voi vogliate. Più specificamente

  1. In Product Name qualunque cosa, l'importante è che non abbia spazi (ad esempio, "MiBand");
  2. In Organization Identifier dovrete prima scrivere "com." e poi qualunque cosa voi desideriate.

Il resto lasciatelo così come lo trovate. Un'immagine vale più di mille parole.

Fatto questo, salvate il progetto ed arriverete alla vera schermata principale di Xcode. C'è però un problema

Ma questo è in realtà un falso problema: basta premere "Fix Issue" ed Xcode risolverà tutto da solo!

N.B.: potrebbe essere che Xcode vi dica che non è stato impostato un team di sviluppo: in caso uscisse un avviso del genere, fate il login con il vostro Apple ID ed anche questo problema sarà risolto!

3. Aggiunta della firma.

A questo punto è arrivato il momento di aprire il pacchetto da circa 27MB precedentemente scaricato. All'interno troverete due file: iOS App Signer e Mi_Fit_1.6.2.ipa. Aprite l'applicazione.

  • In "Input File", dovrete posizionare il percorso del file Mi_Fit_1.6.2.ipa;
  • Signing Certificate è un campo che viene riempito in automatico: Xcode genera automaticamente il certificato richiesto dal programma quando viene installato;
  • In Provisioning Profile, dovrete cercare il file di Provisioning con il Bundle Identifier che Xcode vi ha generato in automatico. Se avete quindi scritto, in precedenza, come Product Name "test" e Organization Identifier "com.testing", avrete un Bundle Identifier del tipo "com.testing.test".

Fatto! Lasciate gli altri due campi invariati e premete Start: a fine del processo, verrà creato (sulla Scrivania in genere) un nuovo file Mi_Fit_1.6.2.ipa con la firma del nostro progetto. Non abbiamo ancora finito però…

4. Caricamento dell'app sul dispositivo.

Fatto tutto questo, tornate sulla schermata di Xcode, andate su Window e poi Devices (esiste anche una shortcut, shift+cmd+2). Collegate quindi ora il dispositivo su cui volete installare l'app appena firmata: se è la prima volta che registrate un dispositivo con Xcode, vi verrà richiesto di registrare il dispositivo. Una volta fatto, avrete una schermata del genere.

Andate quindi su Installed Apps.

Premete sul "+": cercate quindi l'app firmata nel punto 3. Finito! Abbiamo eseguito quindi un downgrade  dalla versione 2.0 alla versione 1.6.2 dell'app Mi Fit, riottenendo così la modalità Early Bid Allarm!