Le applicazioni Java possono essere eseguite su telefoni (almeno Android) E Windows?

1

Ciao a tutti, adoro lo Stackoverflow così utile.

Afaik IOS ha alcune misure di sicurezza che non consentono ad altre app (come jvm) di eseguire codice dalla tua app. Non sei sicuro di quanto questo sia vero.

Tuttavia, ho sentito che ci sono alcuni problemi quando si tenta di eseguire l'applicazione java destinata a Windows su un telefono Android.

È perché alcune librerie (o la maggior parte) non sono multipiattaforma? O forse anche la libreria standard non è multipiattaforma (almeno non completamente)?

Quindi in pratica se volessi programmare l'app per Windows, Linux, Mac, ecc. AND Android, dovrei creare funzioni come:

  IF unix THEN unixfunction()
  IF android THEN androidfunction()

o non dovrei preoccuparmi di questo?

Che cosa dovrei sapere se voglio scegliere come target sia i telefoni Android che i computer (Windows, Linux, ecc.)? L'approccio sopra è ok o ho bisogno di sapere qualcos'altro? È persino possibile?

Ci scusiamo per un sacco di domande, ma la portabilità è il motivo per cui mi sono interessato a Java.

    
posta user394658 29.08.2018 - 13:31
fonte

3 risposte

3

Le applicazioni Java vengono eseguite su una macchina virtuale java, che è ciò che consente loro di lavorare su più piattaforme. Tuttavia, gli sdk di Android hanno un bel po 'di librerie e funzioni aggiuntive relative esclusivamente ad un'applicazione compatibile con Android che renderebbe impossibile il porting diretto su Windows senza adattamento.

Detto questo, ci sono delle librerie che, se usate, permetteranno a un'applicazione per Android di funzionare su Windows, con l'eccezione delle funzionalità del telefono Android che ovviamente sono assenti quando funzionano su Windows. La mia ipotesi è che queste librerie fornirebbero un mezzo per distinguere, ma idealmente vorrai distinguere il meno possibile.

Quindi in breve no, non senza alcuni adattamenti. Se stai pensando di creare un programma che funzioni su entrambi, ti consiglierei di trovare prima una di queste librerie, dato che sarà molto più difficile cambiarle in seguito.

    
risposta data 29.08.2018 - 14:42
fonte
1

Raccomando React Native

Questo è un framework scritto da Facebook che ti permette di scrivere applicazioni mobili che funzionano su entrambe le piattaforme usando javascript. Se desideri conoscere React Native, ti consiglio di utilizzare il sito web Udemy e di cercare React Native. I corsi sono economici e sono pieni di informazioni.

    
risposta data 29.08.2018 - 15:15
fonte
0

Sì, prima di Android Lollipop, puoi eseguire l'applicazione JVM con qualche sforzo. Dopo Android Lollipop, ci sono stati alcuni cambiamenti nel sistema Android Core come ora utilizza ART (Android RunTime) al posto di Dalvik. Quindi, questo ha diviso le app che possono tranquillamente eseguire programmi JVM su Android in due parti, una che supportava versioni di Android precedenti a Lollipop e altre che supportavano versioni passate. Se utilizzi il lollipop Android o versioni successive, puoi provare: Java-N-Ide . Ma supporta solo fino a Java 1.7

Vedi questo: link Ci sono suggerimenti migliori.

    
risposta data 03.09.2018 - 16:21
fonte

Leggi altre domande sui tag