martedì 29 luglio 2014

Eclipse ADT su Mac Os X 10.9

Mi sono trovato a dover spostare parte dello sviluppo su una macchina Mac ed ho provato ad installare Eclipse ADT per la parte Android

Al momento di aprire i progetti (gia' funzionanti su altra macchina) mi sono trovato un segno esclamativo su ogni progetto con l'errore

JRE System Library, I can't find the 1.7 (there is only option for it : JavaSE-1.7 (unbound)

Dopo un po' di ricerche ho visto che oltre ad installare la JRE si deve andare in Preferenze (Mela+virgola), Preferenze (Properties), Java, Installed JRE ed inserire il path

/Library/Java/JavaVirtualMachines/jdk1.7.0_65.jdk/Contents/Home



giovedì 24 luglio 2014

Actionbar su Android

Agli albori di Android era presente un tasto fisico di menu assieme agli attuali tre pulsante in fondo allo schermo. Dalla versione 3 questo e' stato superato dalla ActionBar, una sorta di menu che si trova nella parte alta dello schermo in prossimita' del nome dell'applicazione (indicata dai tre quadratini sovrapposti)






per popolare questo componente si edita il file xml che ha lo stesso nome della Activity e che si trova nelle risorse del progetto (normalmente e' /res/menu/main.xml)

per generare l'esempio mostrato nella figura soprastante
--------------------------------------------------------------------------------
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context="com.luca.innocenti.ibea2.MainActivity" >
    <item android:id="@+id/it" android:title="@string/it" android:checked="true" android:checkable="true"></item>
    <item android:id="@+id/uk" android:title="@string/uk" android:checked="false" android:checkable="true"></item>
</menu>
--------------------------------------------------------------------------------

Per rendere interattivo il menu si agisce sulla funzione onOptionItemSelected
In questo caso si eliminano prima tutti i segni di spunta, poi viene settata la variabile della lingua, aggiunge il segno di spunta al menu premuto e si mostra un toast
--------------------------------------------------------------------------------
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
menu.getItem(0).setChecked(false);
menu.getItem(1).setChecked(false);

switch(id){
case R.id.it:
lingua  = 1;
Toast.makeText(getApplicationContext(), "Adesso impostato in italiano", Toast.LENGTH_SHORT).show();
 if(item.isCheckable()) {
           item.setChecked(!item.isChecked());
       }
break;
case R.id.uk:
lingua = 2;
Toast.makeText(getApplicationContext(), "Now Set in english", Toast.LENGTH_SHORT).show();
 if(item.isCheckable()) {
           item.setChecked(!item.isChecked());
       }
   
break;
}
return super.onOptionsItemSelected(item);
}
--------------------------------------------------------------------------------

Di seguito un breve filmato per vedere come funziona il menu appena impostato



mercoledì 23 luglio 2014

A volte ritornano (Clone S4)

A volte ritornano e non sono proprio sani....

Avevo gia' avuto per le mani questo clone di Samsung S4 ed adesso mi e' stato regalato. Il motivo e' chiaramente spiegato dalla foto sottostante


a dispetto delle condizioni del vetro il telefono funziona diciamo al 95% delle proprie possibilita'
L'unica cosa che e' veramente impossibile da fare e' trascinare in quanto si incontra quasi sempre qualche cricca del vetro e il digitizer interpreta come se si sia staccato il dito


Debian su Promox all'interno di Virtualbox

Prima di passare ad una macchina vera (un bare metal da 16 Giga di ram e 4 processori) ho voluto provare Proxmox su VirtualBox (su un MacBook con 8 Giga di Ram installati)

Le specifiche per Virtualbox sono
1) mettere la scheda virtuale in bridge
2) massimizzare la ram alla macchina virtuale Proxmox
3) massimizzare i processori alla macchina virtuale
4) fregarsene del video ovvero impostazioni minime

A questo punto si lancia l'installazione che inizia con l'EULA

installazione del sistema

Alla fine dell'installazione la macchina e' raggingibile in https sulla porta 8006
ma ovviamente si ha anche un accesso di shell

A questo punto punto si puo' iniziare a montare una nuova macchina virutale con il pulsante Create VM

Internet WayBack Machine


Ho lavorato per circa quattro mesi al sito www.geo.unifi.it nel 2003 e pansavo di aver perso tutto il lavoro quando il nuovo sistemista e' passato ad una nuova piattaforma ed ha rimosso tutte le precedenti pagine

con un po' di sorpresa tramite il sito archive.org/web e' possibile riavere delle fotografie di vari
Anche questo blog e' stato registrato un paio di volte.
Ancora una volta la rete nasconde ma non cancella

martedì 22 luglio 2014

R cannot be resolved in Eclipse

Passando all'ultima versione di ADT mi sono aumentati i mal di testa. E' un paio di giorni che passo il tempo a cercare di risolvere gli errori di Eclipse piuttosto che a programmare

Creando una nuovo progetto su una installazione pulita di ADT Bundle su Windows e' saltato fuori questo messaggio

R Cannot Be Resolved

Frugando sui blog la soluzione e' stata quella di togliere di mettere la spunta su Android 4.4.2 in Java Build Path


Dopo aver fatto un Clean Project l'errore e' scomparso
La cosa divertente e' che ritogliendo la spunta non viene piu' generato l'errore
Rinuncio a capire

Android KitKat 4.4.4 su Moto G

.Un paio di giorni fa e' arrivato l'aggiornamento per KitKat 4.4.4 su Moto G (poco dopo quello per Nexus 7 che invece di passare da 4.4.2 ha avuto un aggiornamento intermedio a 4.4.3)

Non ci sono particolari modifiche (a parte la schermata di selezione delle telefonate)


Facendo un po' di prove sembra sparito il bug che metteva in conflitto il Bluetooth con il WiFI ma il benchmark AnTuTu (stranamente) e' sceso da 17533 punti a 17100 punti

Debugger integrato ESP32S3

Aggiornamento In realta' il Jtag USB funziona anche sui moduli cinesi Il problema risiede  nell'ID USB della porta Jtag. Nel modulo...