Attività iniziali per lo sviluppo Android nativo in Windows
Questa guida illustra come iniziare a usare Windows per creare applicazioni Android native. Se si preferisce una soluzione multipiattaforma, consultare Panoramica dello sviluppo Android in Windows per un breve riepilogo di alcune opzioni.
Il modo più semplice per creare un'app Android nativa consiste nell'usare Android Studio con Java o Kotlin, anche se è possibile usare C o C++ per lo sviluppo Android se si ha uno scopo specifico. Gli strumenti di Android Studio SDK compilano codice, dati e file di risorse in un pacchetto Android Archive, .apk file. Un file APK contiene tutto il contenuto di un'app Android ed è il file usato dai dispositivi Android per installare l'app.
Installa Android Studio
Android Studio è l'ambiente di sviluppo integrato ufficiale per il sistema operativo Android di Google. Scaricare l'ultima versione di Android Studio per Windows.
- Se è stato scaricato un file .exe (consigliato), fare doppio clic per avviarlo.
- Se è stato scaricato un file .zip, decomprimere il file ZIP, copiare la cartella android-studio nella cartella Programmi (Program Files), quindi aprire la cartella bin > android-studio e avviare studio64.exe (per computer a 64 bit) o studio.exe (per computer a 32 bit).
Seguire l'installazione guidata in Android Studio e installare tutti i pacchetti SDK che vengono consigliati. Man mano che diventano disponibili nuovi strumenti e altre API, Android Studio invierà una notifica con un popup o verificherà la disponibilità di aggiornamenti selezionando Supporto>Verificare la disponibilità di aggiornamenti.
Crea un nuovo progetto
Selezionare File>Nuovo>Nuovo progetto.
Nella finestra Scegli il progetto sarà possibile scegliere tra questi modelli:
Attività di base: crea una semplice app con una barra dell'app, un pulsante di azione mobile e due file di layout: uno per l'attività e uno per separare il contenuto di testo.
Attività vuota: crea un'attività vuota e un singolo file di layout con contenuto di testo di esempio.
Attività di spostamento inferiore: crea una barra di spostamento inferiore standard per un'attività. Per altre informazioni su questo argomento, vedi la sezione Componente di spostamento inferiore delle Linee guida Material Design di Google.
I modelli vengono comunemente usati per aggiungere attività ai moduli di app nuovi ed esistenti. Ad esempio, per creare una schermata di accesso per gli utenti dell'app, aggiungere un'attività con il modello Attività di accesso. Per altre informazioni sulla selezione di un'attività e su come aggiungere codice da un modello, consultare la Guida per sviluppatori Android di Google.
Nota
Il sistema operativo Android si basa sull'idea dei componenti e usa i termini attività e finalità per definire le interazioni. Un'attività rappresenta una singola attività mirata che un utente può eseguire. Un'attività fornisce una finestra per la compilazione dell'interfaccia utente usando classi basate sulla classe Visualizzazione. Esiste un ciclo di vita per le attività nel sistema operativo Android, definito da sei callback: onCreate()
, onStart()
, onResume()
, onPause()
, onStop()
e onDestroy()
. I componenti dell'attività interagiscono tra loro usando oggetti finalità. La finalità definisce l'attività da avviare o descrive il tipo di azione da eseguire e il sistema seleziona l'attività appropriata, che può anche essere da un'applicazione diversa. Altre informazioni sulle attività, il Ciclo di vita delle attività e le Finalità sono disponibili nella Guida per sviluppatori Android di Google.
Java o Kotlin
Java è diventato linguaggio nel 1991, sviluppato dall'allora Sun Microsystems, ora di proprietà di Oracle. È diventato uno dei linguaggi di programmazione più popolari e potenti con una delle più grandi comunità di supporto al mondo. Java è basato su classi ed è orientato agli oggetti, progettato per avere il minor numero possibile di dipendenze di implementazione. La sintassi è simile a C e C++, ma ha meno funzionalità di basso livello rispetto a entrambe.
Kotlin è stato annunciato per la prima volta come nuovo linguaggio open source da JetBrains nel 2011 ed è stato incluso come alternativa a Java in Android Studio dal 2017. Nel maggio 2019, Google ha comunicato che Kotlin era il linguaggio preferito per gli sviluppatori di app Android, quindi nonostante sia un linguaggio più recente, ha una forte community di supporto e viene identificato come uno dei linguaggi di programmazione in rapida crescita. Kotlin è multipiattaforma, tipizzato in modo statico e progettato per interagire totalmente con Java.
Java è molto più usato per un'ampia gamma di applicazioni e offre alcune funzionalità che Kotlin non possiede, ad esempio eccezioni controllate, tipi primitivi che non sono classi, membri statici, campi non privati, tipi jolly e operatori ternari. Kotlin è progettato appositamente per e consigliato da Android. Inoltre offre alcune funzionalità che Java non offre, ad esempio riferimenti Null controllati dal sistema di tipi, nessun tipo non elaborato, matrici invarianti, tipi di funzione appropriati (a differenza delle conversioni SAM di Java), varianza del sito in uso senza caratteri jolly, cast intelligenti e altro ancora. Per altre informazioni, vedere il confronto con Java nella documentazione di Kotlin.
Livello API minimo
Sarà necessario decidere il livello API minimo per l'applicazione. Determina la versione di Android supportata dall'applicazione. I livelli di API inferiori sono meno recenti e quindi in genere supportano più dispositivi, ma i livelli API più elevati sono più recenti e quindi offrono più funzionalità.
Selezionare il collegamento Suggerimenti per la scelta per aprire un grafico di confronto che mostra la distribuzione del supporto del dispositivo e le funzionalità chiave associate alla versione della piattaforma.
Supporto app istantanee e artefatti Androidx
È presente una casella di Supporto app istantanee e un'altra per Uso di artefatti androidx nelle opzioni di creazione del progetto. Il supporto app istantanee non è selezionato e androidx viene selezionato come impostazione predefinita consigliata.
Le app istantanee di Google Play consentono agli utenti di provare un'app o un gioco senza prima procedere all'installazione. Queste app istantanee possono essere rilevate in Play Store, Google Search, social network e ovunque si condivide un collegamento. Selezionando la casella Supporto app istantanee, si chiede ad Android Studio di includere Instant Development SDK di Google Play con il progetto. Altre informazioni sulle app istantanee di Google Play sono disponibili nella Guida per sviluppatori Android.
Gli artefatti AndroidX rappresentano la nuova versione della libreria di supporto Android e offrono compatibilità con le versioni precedenti di Android. AndroidX fornisce uno spazio dei nomi coerente a partire dalla stringa androidx per tutti i pacchetti disponibili.
Nota
AndroidX è ora la libreria predefinita. Per deselezionare questa casella e usare la libreria di supporto precedente, è necessario rimuovere la versione più recente di Android Q SDK. Consultare Deselezionare l'uso di artefatti Androidx in StackOverflow per istruzioni, ma prima di tutto si noti che i pacchetti della libreria di supporto precedenti sono stati mappati nei pacchetti androidx.* corrispondenti. Per un mapping completo di tutte le classi precedenti e degli artefatti di compilazione per le nuove, consultare Migrazione ad AndroidX.
File di progetto
La finestra di Progetto di Android Studio contiene i file seguenti (assicurarsi che la visualizzazione Android sia selezionata dal menu a discesa):
app > java > com.example.myfirstapp > MainActivity
L'attività principale e il punto di ingresso per l'app. Quando si compila ed esegue l'app, il sistema avvia un'istanza di questa attività e carica il layout.
app > res > layout > activity_main.xml
File XML che definisce il layout per l'interfaccia utente dell'attività. Contiene un elemento TextView con il testo "Hello World"
app > manifests > AndroidManifest.xml
Il file manifesto che descrive le caratteristiche fondamentali dell'app e ognuno dei relativi componenti.
Gradle Scripts > build.gradle
Esistono due file con questo nome: "Project: My First App", per l'intero progetto e "Modulo: app", per ogni modulo dell'app. Un nuovo progetto avrà inizialmente un solo modulo. Usare il file build.file del modulo per controllare il modo in cui il plug-in Gradle compila l'app. Altre informazioni su come configurare la compilazione nella Guida per sviluppatori Android.
Usare C o C++ per lo sviluppo di giochi Android
Il sistema operativo Android è progettato per supportare le applicazioni scritte in Java o Kotlin, traendo vantaggio dagli strumenti incorporati nell'architettura del sistema. Molte funzionalità di sistema, ad esempio l'interfaccia utente Android e la gestione delle finalità, vengono esposte solo tramite interfacce Java. Esistono alcune istanze in cui è possibile usare il codice C o C++ tramite Android Native Development Kit (NDK) nonostante alcune delle sfide associate. Lo sviluppo di giochi è un esempio, poiché i giochi usano in genere la logica di rendering personalizzata scritta in OpenGL o Vulkan e traggono vantaggio da un'ampia gamma di librerie C incentrate sullo sviluppo di giochi. L'uso di C o C++ può anche aiutare a ottenere prestazioni aggiuntive da un dispositivo, per ottenere una bassa latenza o eseguire applicazioni a elevato utilizzo di calcolo, ad esempio simulazioni di fisica. Il NDK non è tuttavia appropriato per la maggior parte dei programmatori Android principianti. A meno che non vi sia uno scopo specifico per l'uso di NDK, è consigliabile attenersi a Java, Kotlin o a uno dei framework multipiattaforma.
Per creare un nuovo progetto con supporto C/C++:
Nella sezione Scegliere il progetto della procedura guidata di Android Studio selezionare il tipo di progetto C++ nativo*. Selezionare Avanti completare i campi rimanenti, quindi selezionare nuovamente Avanti.
Nella sezione Personalizza il supporto C++ della procedura guidata è possibile personalizzare il progetto con il campo C++ Standard. Usare l'elenco a discesa per selezionare la standardizzazione di C++ da usare. Selezionando Toolchain Default viene usata l'impostazione predefinita CMake. Selezionare Fine.
Dopo che Android Studio crea il nuovo progetto, è possibile trovare una cartella cpp nel riquadro Progetto che contiene i file di origine nativi, le intestazioni, gli script di compilazione per CMake o ndk-build e le librerie predefinite che fanno parte del progetto. Inoltre è possibile trovare un file di origine C++ di esempio,
native-lib.cpp
, nella cartellasrc/main/cpp/
che fornisce una semplice funzionestringFromJNI()
che restituisce la stringa "Hello from C++". Inoltre verrà visualizzato uno script di compilazione CMake,CMakeLists.txt
, nella directory radice del modulo necessaria per la compilazione della libreria nativa.
Per altre informazioni, sull'aggiunta di codice C e C++ al progetto, consultare la Guida per sviluppatori Android. Per trovare esempi di Android NDK con integrazione C++, vedere il repository di esempi di Android NDK in GitHub. Per compilare ed eseguire un gioco C++ in Android, usare l'API dei servizi Google Play Giochi.
Linee guida di progettazione
Gli utenti dei dispositivi si aspettano che le applicazioni abbiano un determinato aspetto e si comportino in un determinato modo... in caso di tocco o scorrimento o utilizzo dei controlli vocali, gli utenti avranno aspettative specifiche per l'aspetto dell'applicazione e il suo utilizzo. Queste aspettative dovrebbero rimanere coerenti per ridurre confusione e frustrazione. Android offre una guida a queste aspettative di piattaforma e dispositivo che combinano le basi di Material Design Google per modelli visivi e di navigazione, insieme alle linee guida qualità per compatibilità, prestazioni e sicurezza.
Per altre informazioni, vedere la documentazione per progettazione per Android.
Sistema Fluent Design per Android
Inoltre Microsoft offre linee guida di progettazione con l'obiettivo di offrire un'esperienza semplice nell'intero portfolio di app per dispositivi mobili Microsoft.
Sistema di progettazione Microsoft Fluent 2: Interfaccia utente Fluent per Android