Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Java per Android differenze rispetto ad un programma scritto per Linux(PC)?

    Buongiorno a tutti,
    Vi domando gentilmente:
    "Java per Android differenze rispetto ad un programma scritto per Linux(PC)"?
    Non ho mai sviluppato su Android e conosco abbastanza Java, tuttavia cosa mi devo aspettare nel convertire un programma scritto per Linux PC in Android?
    jabjoint

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Dovrai aspettarti la riscrittura completa dell'applicazione.
    Il ciclo di vita di una App Android è completamente differente da quello di un applicazione per PC.

    Un programma per PC scritto in Java consta di una classe principale contenente il metodo main() da cui parte l'applicazione e questa applicazione termina quando termina l'ultimo dei suoi user-threads.

    Un'APP per android non ha un metodo main: esistono una o più Activity, che hanno un ciclo di vita ben preciso; una di esse viene deputata ad avviare l'APP e questo si specifica in un file chiamato Manifest, che contiene una serie di "configurazioni" che servono all'app (policy di sicurezza, activity di cui è composta, filtri, ecc).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Poi comunque, aggiungo io oltre a quanto detto da LeleFT, è molto differente il framework grafico: widget differenti (nulla a che fare con quelli di AWT/Swing/JavaFX) e approccio al layout dei componenti differente anche per il fatto di dover supportare schermi di dimensioni anche molto differenti e con dpi differente.

    La interfaccia utente va proprio RIpensata in ottica mobile. Se in una applicazione "desktop" è tipico avere ad esempio un tabbed pane con x schede, una toolbar con 30 icone, un menù con tot voci ecc, beh, in ambito mobile dove mediamente hai uno schermo da 5~6 pollici questa quantità di componenti non è assolutamente pensabile.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Spero che da Cell a Cell(Smartphone) le carattersistiche si mantengano...perlomeno...
    Comunque, OK. Grazie, consigli molto utili.
    jabjoint

  5. #5
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da jabjoint Visualizza il messaggio
    Spero che da Cell a Cell(Smartphone) le carattersistiche si mantengano...
    Ma dipende da cosa intendi. Una delle grane maggiori in Android è data proprio dallo schermo. Si va dai 3~4 pollici degli smartphone più datati, fino agli smartphone "padelle" da 6~7 pollici. E inoltre una cosa che può variare molto è la densità dei pixel (dpi). Si va dai circa 125dpi di un vecchissimo LG Optimus L3 fino ad esempio ai 516dpi di un Samsung S21 Ultra. Senza contare i tablet ....

    In Android, se ben ricordo (fatto giusto qualcosina tanti anni fa), c'è la possibilità di mettere nel progetto più versioni della stessa immagine a dimensioni in pixel differenti. Mettendole ovviamente in locazioni e cartelle apposite secondo determinate specifiche. E ci pensa poi ciascun dispositivo ad usare la immagine appropriata in base alla propria densità di pixel dello schermo. Si tratta quindi di un lavoro di creazione e impostazione delle immagini ben maggiore rispetto a quello che si fa solitamente in ambito desktop.

    Anche in ambito desktop c'è il problema della densità dei pixel, sebbene in misura relativamente minore. Ma specialmente già da un po' di anni con l'introduzione di molti notebook e display in "high dpi".
    Ultima modifica di andbin; 19-04-2022 a 21:16
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.