Risoluzione dei problemi di Android SDK
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.
Quali autorizzazioni Android sono necessarie?
A seconda dei servizi usati, sono necessarie le autorizzazioni seguenti:
- Tutti i servizi:
INTERNET
,ACCESS_NETWORK_STATE
- Distribuzione:
REQUEST_INSTALL_PACKAGES
,DOWNLOAD_WITHOUT_NOTIFICATION
Le autorizzazioni necessarie vengono unite automaticamente al manifesto dell'app dall'SDK.
Nessuna di queste autorizzazioni richiede l'approvazione dell'utente in fase di esecuzione, sono tutte autorizzazioni di installazione.
I dati di analisi non sono visualizzati nel portale
Assicurarsi di aver integrato correttamente i moduli SDK.
Assicurarsi che il segreto app corretto sia incluso insieme alla chiamata al
start()
metodo. È possibile copiare il codice esattostart()
aprendo l'app nel portale e passando alla pagina Introduzione.Se si desidera visualizzare i log inviati al back-end, modificare il livello di log in Verbose nell'applicazione e l'SDK stampa i log nella console. Chiamare l'API seguente prima di avviare l'SDK.
AppCenter.setLogLevel(Log.VERBOSE);
AppCenter.setLogLevel(Log.VERBOSE)
Controllare i log come "App Center SDK configurato correttamente" (a livello di log info), quindi controllare se vengono visualizzati i log delle richieste HTTPS.
Assicurarsi che il dispositivo sia online.
A volte, i log potrebbero richiedere alcuni minuti per visualizzare la superficie nel portale. Attendere qualche tempo se questo è il caso.
Per verificare se il back-end di App Center ha ricevuto i dati, passare alla sezione Flusso di log nel servizio Analisi. Gli eventi devono essere visualizzati dopo l'invio.
Gli arresti anomali non vengono visualizzati nel portale
Assicurarsi di aver integrato correttamente i moduli SDK.
Assicurarsi che il segreto app corretto sia incluso insieme alla chiamata al
start()
metodo. È possibile copiare il codice esattostart()
aprendo l'app nel portale e passando alla pagina Introduzione.Riavviare l'app dopo un arresto anomalo. L'SDK inoltra il log di arresto anomalo solo dopo il riavvio.
Se si desidera visualizzare i log inviati al back-end, modificare il livello di log in Verbose nell'applicazione e l'SDK stampa i log nella console. Chiamare l'API seguente prima di avviare l'SDK.
AppCenter.setLogLevel(Log.VERBOSE);
AppCenter.setLogLevel(Log.VERBOSE)
Controllare i log come "App Center SDK configurato correttamente" (a livello di log info), quindi controllare se vengono visualizzati i log delle richieste HTTPS.
Assicurarsi che il dispositivo sia online.
A volte, i log potrebbero richiedere alcuni minuti per visualizzare la superficie nel portale. Attendere qualche tempo se questo è il caso.
Se si vuole verificare se l'SDK ha rilevato l'arresto anomalo dell'app successiva all'avvio dell'app, è possibile chiamare l'API per verificare se l'app si è arrestata in modo anomalo nell'ultima sessione e viene visualizzato un avviso. In alternativa, è possibile estendere il callback dell'arresto anomalo per verificare se è stato inviato correttamente al server.
Per verificare se il back-end di App Center ha ricevuto l'arresto anomalo, passare alla sezione Flusso di log nel servizio Analisi. I tuoi arresti anomali dovrebbero essere visualizzati lì, una volta che è stato inviato.
Gli aggiornamenti distribuiti e in-app bloccano i test automatici dell'interfaccia utente
Se si eseguono test automatizzati dell'interfaccia utente, gli aggiornamenti in-app abilitati bloccano i test automatizzati dell'interfaccia utente, perché tenteranno di eseguire l'autenticazione nel back-end di App Center. È consigliabile non abilitare App Center Distribute per i test dell'interfaccia utente.
Qual è l'impatto dell'SDK di App Center sulle dimensioni dell'app Android?
App Center SDK è progettato per avere un impatto minimo sulle dimensioni dell'installazione dell'applicazione.
Per illustrare questo problema, è stata creata un'applicazione Java vuota usando il modello "app vuota" di Android Studio. Compilare l'app nella configurazione della versione e installare l'app in un dispositivo che esegue Android 7.0.
I test sono stati eseguiti senza Proguard abilitato.
I numeri seguenti possono variare e dipendono dalle impostazioni di compilazione, quindi considerarle una guida approssimativa. L'impatto dell'SDK per l'app sarà ancora inferiore se si usa Proguard.
Moduli di App Center usati | Dimensioni DELL'APK esportate | Dimensioni dell'installazione (come segnalato dal dispositivo) |
---|---|---|
Nessuno (app vuota) | 1,3 MB | 3,43 MB |
Analytics in App Center | 1,4 MB | 3,63 MB |
Arresto anomalo di App Center | 1,4 MB | 3,70 MB |
Distribuzione di App Center | 1,4 MB | 3,71 MB |
Tutti i moduli di App Center | 1,4 MB | 3,82 MB |
Proteggere il valore segreto di App Center
L'identificatore app_secret
dell'app è necessario sapere a quale app si applica il traffico e non può essere usato per recuperare o modificare i dati esistenti. Se l'utente app_secret
è esposto, il rischio maggiore è l'invio di dati non validi all'app, ma non avrà effetto sulla sicurezza dei dati.
Per recuperare i dati sensibili, è necessario fornire un token app/utente, generato sul lato del client. Non è possibile rendere i dati sul lato client completamente sicuri.
È possibile migliorare la sicurezza dell'app usando una variabile di ambiente per inserire il segreto dell'app nel codice. In questo modo, il segreto non è visibile nel codice.
Migrazione da jCenter a Maven Central
A causa della chiusura del supporto di jCenter , tutti gli assembly sono stati spostati nel repository Maven Central.
Per usare App Center, è necessario aggiungere mavenCentral()
al repository nel file Gradle come illustrato di seguito:
repositories {
google()
mavenCentral()
}