Mostrando entradas con la etiqueta java. Mostrar todas las entradas
Mostrando entradas con la etiqueta java. Mostrar todas las entradas

24 de febrero de 2023

Hacer funcionar arduino-IDE en Raspberry Pi B+ con OS 11 y Java 11

Me ha dejado de funcionar arduino-IDE en rpiB+ con Raspberry Pi OS 11.

Desde la consola aparece un error:

$ /usr/bin/arduino
Picked up JAVA_TOOL_OPTIONS:  
Error occurred during initialization of VM
Server VM is only supported on ARMv7+ VFP

De modo que parece que hay un problema con java

$ java -version
Error occurred during initialization of VM
Server VM is only supported on ARMv7+ VFP

Pues is, confirmado no funciona java.

El procesador de mi máquina es ARMv6:

$ cat /proc/cpuinfo
processor       : 0
model name      : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS        : 697.95
Features        : half thumb fastmult vfp edsp java tls  
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x0
CPU part        : 0xb76
CPU revision    : 7

Hardware        : BCM2835
Revision        : 0010
Serial          : 00000000ae3e152f
Model           : Raspberry Pi Model B Plus Rev 1.2


Solución:

from: https://stackoverflow.com/questions/61175441/error-occurred-during-initialization-of-vm-server-vm-is-only-supported-on-armv7

Si el procesador es ARMv6 hay que sustituir java:

$ cd /usr/lib/jvm

$ sudo wget https://cdn.azul.com/zulu-embedded/bin/zulu11.41.75-ca-jdk11.0.8-linux_aarch32hf.tar.gz

$ sudo tar -xzvf zulu11.41.75-ca-jdk11.0.8-linux_aarch32hf.tar.gz

$ sudo rm zulu11.41.75-ca-jdk11.0.8-linux_aarch32hf.tar.gz

Actualizar alternatives:


$ sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/zulu11.41.75-ca-jdk11.0.8-linux_aarch32hf/bin/java 1 $ sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/zulu11.41.75-ca-jdk11.0.8-linux_aarch32hf/bin/javac 1

Ahora seleccionar el nuevo java instalado:


$ sudo update-alternatives --config java
           [revisa y selecciona la nueva version instalada, en mi caso es el 2 ] 
$ sudo update-alternatives --config javac

Comprueba la nueva versión de java:

$ java -version
openjdk version "11.0.8" 2020-07-14 LTS
OpenJDK Runtime Environment Zulu11.41+75-CA (build 11.0.8+10-LTS) OpenJDK Client VM Zulu11.41+75-CA (build 11.0.8+10-LTS, mixed mode)

Ok!!! parece que funciona.

Pruebo si funciona arduino IDE:
Ok! funciona.



 

 

 

 

 

 





1 de julio de 2014

Programación ANDROID: Capturar y formatear fecha y hora


Para capturar la hora y fecha del sistema Android y formatearla se puede hacer en MainActivity.java con el siguiente código java:


...
         long date = System.currentTimeMillis(); 
        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss yyyy/MM/d");
        String dateString = sdf.format(date);

...

y ya tenemos la hora y fecha formateada como string.

y lo podemos usar en un TextView previamente definido:

...
              tvFECHA.setText("DatWIF: " + dateString);
...

apareciendo como 15:45:01 2014/06/13

Ref.:
http://developer.android.com/reference/java/text/SimpleDateFormat.html




26 de junio de 2014

Programación ANDROID: Bloquear apagado de pantalla

En algunas aplicaciones ANDROID es necesario que la pantalla permanezca encendida y so se atenúe ni
apague.

En el archivo MainActivity.java
poner:

...
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
     
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

...

Y la pantalla permanecerá encendida.

Programación ANDROID: Bloquear rotación de pantalla

En una app que he programada cuando cambia la orientación de la pantalla se reinicia el layout y borra todas
las variables.

Para evitarlo se puede bloquear que responda al cambio de posición.

Editar el archivo AndroidManifest.xml añadir dentro del tag activity

android:screenOrientation="portrait"
ó
android:screenOrientation="landscape"

También se puede hacer con programación en java, edita el dicheo ActivityMain.java y poner :

 ...
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);                   setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
...

Cualquiera de estas dos maneras  funciona.

Ref.:
http://stackoverflow.com/questions/4675750/lock-screen-orientation-android