Autore Topic: Versione desktop e mobile in eclipse  (Letto 702 volte)

Offline andreag85

  • Nuovo arrivato
  • *
  • Post: 4
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus S
  • Sistema operativo:
    Ubuntu 11.04
Versione desktop e mobile in eclipse
« il: 05 Aprile 2011, 15:58:34 CEST »
0
ciao a tutti,
per la mia tesi sto realizzando un porting per android di un'applicazione desktop.
adesso ho in eclipse il progetto della desktop funzionante e dovrei intergrare l'interfaccia android che ho realizzato insieme a qualche classe aggiuntiva in modo da poter importare le classi della versione desktop da riutilizzare completamente solo che non so come fare.
eclipse non mi riconosce la mia app come se fosse android ma semplicemente java.
spero di essermi spiegato. sapete aiutarmi?
grazie,
Andrea

Offline Vytek

  • Translate Team
  • Utente junior
  • **
  • Post: 125
  • Respect: +6
    • Mostra profilo
  • Dispositivo Android:
    Samsung S5
  • Sistema operativo:
    Windows 8.1
Re:Versione desktop e mobile in eclipse
« Risposta #1 il: 05 Aprile 2011, 16:36:07 CEST »
0
Ciao,
da quello che ho capito la tua app è Java ;-) Nel senso che se pur Android usa classi Java ha le proprie classi Java e la propria macchina virtuale. In parole povere devi fare un vero e proprio porting della tua applicazione. Ciò che puoi velocemente portare in un nuovo progetto Android sono solo gli algoritmi e le classi base purchè esistano anche in Android. Per fare un esempio tutte le classi GUI di Java (Swing, AWT, etc tec...) non esistono in Android e dovrai per forza riprogrammare il tutto basandoti sulle API messe a disposizione da Android. L'unico consiglio è quello di creare un nuovo progetto Android e poi iniziare a "portare" quello che si può nel nuovo progetto Android. Ora non so quanto sia grande il progetto, ma personalmente credo sia una cosa lunga ed abbastanza complessa.

Un saluto, buon lavoro e spero di essere stato d'aiuto...

Offline andreag85

  • Nuovo arrivato
  • *
  • Post: 4
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus S
  • Sistema operativo:
    Ubuntu 11.04
Re:Versione desktop e mobile in eclipse
« Risposta #2 il: 05 Aprile 2011, 19:20:38 CEST »
0
ciao,
innanzi tutto grazie per la risposta.
non avevo precisato una cosa... le classi devono essere proprio le stesse e non copiate affinchè, essendo un progetto in sviluppo, tutte le modifiche alle classi in comune abbiano effetto su entrambi i progetti senza dover copiare tutto a mano.
qualche altro consiglio?
andrea

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Versione desktop e mobile in eclipse
« Risposta #3 il: 05 Aprile 2011, 20:46:50 CEST »
0
Sostanzialmente è come ha detto Vytek. Sottolineo anche il fatto che, dovendo lavorare in ottica di portabilità multipiattaforma, è in fase di progetto dell'applicazione che occorre definire attentamente i livelli di astrazione. In altre parole, l'applicazione desktop (se è quella che viene prima) deve essere pensata per essere facilmente portabile.

Ciò significa separare al massimo il motore dell'applicazione da tutto ciò che riguardo interfaccia grafica, accesso a storage di massa (file o database), etc. La user interface devi mettere in conto di ripensarla pesantemente, per ovvi motivi. Per l'accesso a storage, penserei di fare un wrapper per ciascuna piattaforma, così da uniformarne l'uso.

Se l'applicazione desktop non può essere toccata, il lavoro è più pesante, perchè in genere riutilizzerai molto meno codice. Comunque, in entrambi i casi, c'è da fare un po' di lavoro preliminare a tavolino per studiare quale e quanto codice è riutilizzabile.

NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline Vytek

  • Translate Team
  • Utente junior
  • **
  • Post: 125
  • Respect: +6
    • Mostra profilo
  • Dispositivo Android:
    Samsung S5
  • Sistema operativo:
    Windows 8.1
Re:Versione desktop e mobile in eclipse
« Risposta #4 il: 05 Aprile 2011, 20:54:41 CEST »
0
Allora in questo caso credo ti convenga creare delle classi comuni come libreria in un classico file JAR. Ovviamente le classi contenute nel file .JAR devono far riferimento alle classi base presenti anche in Android. Ti faccio un esempio io nella mia applicazione ho usato molte librerie normalmente utilizzate in applicazioni java.

Un saluto...

Offline andreag85

  • Nuovo arrivato
  • *
  • Post: 4
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus S
  • Sistema operativo:
    Ubuntu 11.04
Re:Versione desktop e mobile in eclipse
« Risposta #5 il: 06 Aprile 2011, 14:05:11 CEST »
0
grazie per i consigli,
il programma è ben modulato quindi il passaggio non dovrebbe essere troppo doloroso,
per adesso ho inserito nel java build path del mio progetto android il progetto desktop cosi posso utilizzare gli include per utilizzare le classi in comune,
sembra funzionare ma ora faccio qualche prova...