Guida alla risoluzione dei problemi del wrapping delle app Android

Questo argomento descrive i problemi comuni che potresti riscontrare durante il wrapping dell'applicazione e come correggerli.

Errore o eccezione Riepilogo Soluzione temporanea
ERROR_APP_COMPLIANCE_D8 = -24 MaaS360® attualmente non supporta il wrapping delle app compilate con dexer D8 . Scegliere una delle opzioni riportate di seguito per disabilitare la verifica D8 :
  • Andare al file gradle.properties in Android Studio, impostare android.enableD8 su false e quindi compilare nuovamente l'applicazione.
  • Impostare il parametro disableD8Check su false in MaaS360. Nota: quando disabiliti il controllo D8 , potresti riscontrare delle modifiche nel comportamento dell'applicazione impacchettata.
USES_64_BIT_LIBRARY_ERROR_CODE = -1 La crittografia non è supportata sulle applicazioni che utilizzano librerie (so) native a 64 bit. Rimuovi tutte le librerie a 64 bit nel file .apk e riesegui il wrap dell'app.
USES_64_BIT_LIBRARY_WITH_ANALYTICS_ERROR_CODE = -5 L'analisi delle applicazioni non è supportata sulle applicazioni che utilizzano librerie native (so) a 64 bit. Disabilitare l'analisi dell'app e quindi eseguire nuovamente il wrap dell'applicazione. Per disabilitare l'analisi dell'app:
  1. Accedere al portale MaaS360 e andare su Applicazioni > Catalogo > Aggiungi > Android > Enterprise App per Android > Flusso di lavoro Wrapping and Signing.
  2. Deselezionare l'opzione Abilita App Analytics .
USES_SQLCIPHER_ANALYTICS_ERROR_CODE = -8 L'analisi dell'app non è supportata sulle applicazioni che utilizzano SQLCipher versione 2.x e 3.x per la crittografia. Utilizzare le versioni di SQLCipher successive a 3.x, quindi eseguire di nuovo il wrap dell'applicazione.
ERROR_OCCURRED_WHILE_GENERATING_SPLIT_DEX_CLASSES = -21 MaaS360 genera un'eccezione se l'app contiene numerose librerie. MaaS360 supporta funzioni come Dividi dex e Multidex per superare tali scenari, ma viene attivata un'eccezione quando il numero di file di classe di riferimento nei file DEX supera il limite consentito, nonostante il partizionamento dei file DEX. Utilizzare il parametro packagesToRemove nel Portale MaaS360 per rimuovere alcuni pacchetti dal file APK finale, come le librerie di supporto e i servizi di riproduzione non necessari. Esempio: packagesToRemove=com.sun,com.apple
ClassNotFoundException, NoClassDefFoundError Quando si utilizza la libreria Retrofit, il metodo responseBodyConverter nella libreria genera queste eccezioni. Impostare protectRetrofitMethod=true per evitare l'eccezione.

Risoluzione dei problemi

Se il gateway non funziona, assicurarsi che ProGuard non sia applicato alla libreria OkHttp3.