Creazione di app Xamarin per Android
Importante
Visual Studio App Center è previsto per il ritiro il 31 marzo 2025. Anche se è possibile continuare a usare Visual Studio App Center fino a quando non viene completamente ritirato, esistono diverse alternative consigliate che è possibile considerare la migrazione a.
Altre informazioni sulle sequenze temporali di supporto e sulle alternative.
Per iniziare a creare la prima app Android Xamarin, è necessario:
- Connettersi all'account del servizio repository (GitHub, Bitbucket, VSTS, Azure DevOps).
- Selezionare un repository e un ramo in cui risiede l'app.
- Scegliere il progetto Android da compilare.
- Configurare la prima compilazione.
Nota
Per l'esecuzione dell'app in un dispositivo reale, è necessario firmare la compilazione con un KeyStore valido.
1. Collegamento del repository
Se non è stata precedentemente connessa all'account del servizio repository, è necessario eseguire prima di tutto questa operazione. Dopo la connessione dell'account, selezionare il repository in cui si trova il progetto Xamarin. È necessario disporre delle autorizzazioni di amministratore e pull per configurare una compilazione per un repository.
2. Selezione di un ramo
Dopo aver selezionato un repository, selezionare il ramo da compilare. Per impostazione predefinita, App Center elenca tutti i rami attivi.
3. Configurazione della compilazione
Il progetto Xamarin deve essere configurato prima della prima compilazione.
3.1. Trigger di compilazione
Per impostazione predefinita, il servizio di compilazione usa l'integrazione continua, quindi una nuova compilazione viene attivata ogni volta che uno sviluppatore esegue il push in un ramo configurato. Se si preferisce attivare manualmente nuove compilazioni, è possibile modificare questa impostazione nel riquadro di configurazione.
3.2. Progetto e configurazione
I progetti disponibili nel repository popolano se si trovano all'interno dell'intervallo di analisi. Selezionare il progetto corretto per la compilazione Android e selezionare la configurazione appropriata.
Nota
Per prestazioni ottimali, l'analisi è attualmente limitata a quattro livelli di directory, inclusa la radice del repository.
3.3. Versione mono
App Center consente di usare diversi ambienti Mono raggruppati con il rispettivo SDK Xamarin.Android per le compilazioni. In questo modo si mantiene la compatibilità con le versioni precedenti, supportando anche le funzionalità più recenti. La versione mono predefinita per una nuova configurazione del ramo è la versione stabile più recente. È possibile scegliere di usare uno degli ambienti Mono precedenti per creare versioni precedenti di framework o librerie.
Quando si seleziona una versione Mono nella configurazione di compilazione, la versione di Xamarin.Android SDK in bundle visualizzata accanto a essa. Per altre informazioni sugli aggiornamenti della versione di Xamarin SDK, vedere il blog sulla versione di Xamarin.
3.3.1. Versione di .NET Core
La versione corretta di .NET Core verrà selezionata automaticamente in base alla versione Mono usata per la compilazione e non può essere sovrascritto. È possibile visualizzare il mapping di Mono a .NET Core usato dai servizi nella tabella seguente:
Mono | .NET Core |
---|---|
<= 5,18 | 2.2.105 |
6.0 | 2.2.300 |
6.4 | 3.0.100 |
6.6 | 3.1.100 |
6.8 | 3.1.200 |
6.10 | 3.1.300 |
6.12 | 3.1.401 |
3.4. Compilare il bundle di app Android (.aab)
Il bundle di app Android è un formato di distribuzione usato per generare API ottimizzate per dispositivi specifici. Può essere caricato in Play Store. Per altre informazioni sul bundle di app Android, vedere la documentazione ufficiale di Android e le note sulla versione di Xamarin.Android 9.4, che consentono anche di decidere se si vuole creare un bundle insieme al normale .apk.
Attivare l'opzione per Il bundle di app Android per produrre un .aab
oggetto e un .apk
oggetto . Se il file contiene aab
nella .csproj
AndroidPackageFormat
proprietà, questa opzione verrà attivata automaticamente. La compilazione di un .aab
oggetto è supportata per Xamarin.Android 9.4 e versioni successive.
3.5. Numero di versione di incremento
Se abilitato, il codice della versione nel AndroidManifest.xml dell'app aumenta automaticamente per ogni compilazione. La modifica avviene prima della compilazione e non verrà eseguito il commit nel repository.
3.6. Firma del codice
Una compilazione completata produrrà un .apk
file e un file aggiuntivo .aab
se abilitato. Per rilasciare la compilazione in Play Store, è necessario firmarlo con un keystore e un alias validi. Per firmare le compilazioni prodotte da un ramo, abilitare la firma del codice nel riquadro di configurazione, caricare l'archivio chiavi e fornire i valori necessari nel riquadro di configurazione. È possibile leggere istruzioni di firma del codice più dettagliate. L'oggetto .aab
verrà firmato usando le stesse credenziali dell'oggetto .apk
.
3.7. Avviare la compilazione riuscita in un dispositivo reale
Usare il file appena prodotto .apk
per testare se l'app inizia su un dispositivo reale. Ciò aggiunge circa 10 minuti al tempo di compilazione totale. Sono disponibili altre informazioni nella guida all'integrazione dei test.
3.8. NuGet restore
Se il NuGet.config
file viene archiviato nel repository e si trova accanto al .sln
file o a livello radice del repository, App Center ripristina i feed NuGet privati quando vengono aggiunti come illustrato nell'esempio seguente. Le credenziali possono essere aggiunte in modo sicuro usando le variabili di ambiente:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget" value="https://api.nuget.org/v3/index.json" />
<add key="MyGet" value="https://www.myget.org/F/MyUsername/api/v2/index.json" />
<add key="MyAuthNuget" value="https://nuget.example.com/v2/index.json" />
</packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSourceCredentials>
<MyAuthNuget>
<add key="Username" value="$USER_VARIABLE" />
<add key="ClearTextPassword" value="$PASSWORD_VARIABLE" />
</MyAuthNuget>
</packageSourceCredentials>
</configuration>
Se sono presenti configurazioni complesse e sono necessarie altre informazioni, vedere Configurazione del comportamento di NuGet.
3.9. Distribuire la compilazione
È possibile configurare ogni compilazione riuscita da un ramo da distribuire a un gruppo di distribuzione creato in precedenza o a una destinazione dell'archivio. È possibile aggiungere un nuovo gruppo di distribuzione o configurare una connessione all'archivio dall'interno del servizio Distribuisci. Esiste sempre un gruppo di distribuzione predefinito denominato "Collaboratori" che include tutti gli utenti che hanno accesso all'app.
Nota
Se si distribuisce in Google Play Store, è preferibile un bundle di app Android (.aab
) e verrà distribuito se abilitato. Per i gruppi di distribuzione di App Center e le destinazioni di Intune store, verrà usato un normale .apk
anche se viene generato anche un oggetto.aab
.
4. Compilare i risultati
Dopo i trigger di compilazione, la compilazione sarà in uno degli stati seguenti:
- queued : la compilazione si trova in una coda in attesa che le risorse vengano liberate.
- building : la compilazione è in esecuzione.
- operazione completata: la compilazione è stata completata correttamente.
- failed: la compilazione è stata arrestata con errori. È possibile risolvere il problema scaricando ed esaminando il log di compilazione.
- annullata : la compilazione è stata annullata da un'azione dell'utente o è scaduta.
4.1. Log di compilazione
Per una compilazione completata (riuscita o non riuscita), scaricare i log per altre informazioni su come è andata la compilazione. App Center fornisce un archivio con i file seguenti:
|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
|-- <build-step-1>
|-- <build-step-2>
|--
|-- <build-step-n> (e.g. n_Post Job Cleanup.txt)
I log dei passaggi di compilazione (che si trovano nella build/
directory dell'archivio) sono utili per comprendere il passaggio e il motivo per cui la compilazione non è riuscita.
4.2. L'app (.apk)
Il .apk
file è un file in pacchetto dell'applicazione Android che archivia l'app Android. Se la compilazione è stata firmata correttamente, il .apk
file può essere installato in un dispositivo reale e distribuito in Play Store. Se la compilazione non è stata firmata, l'app può essere eseguita in un emulatore o essere usata per altri scopi.
Versioni e requisiti supportati
App Center supporta progetti PCL (Portable Class Library) e .NET Standard . Per le versioni di .NET Standard, vedere Cloud Build Machines (Macchine di compilazione cloud ).
App Center non supporta i componenti di Xamarin Component Store e consigliamo di usare pacchetti NuGet ogni volta che sono disponibili. Se si usa un componente che non può essere sostituito, contattare Microsoft. Vedere guida e commenti e suggerimenti.