Riduzione della dimensione dell'apk che ha i file .so
-
21-12-2019 - |
Domanda
Nella nostra app Android abbiamo due file .so: uno per x86 e un altro per il braccio.Sono abbastanza grandi e stanno aumentando le dimensioni del .apk da 7 Mb a 11 Mb.
Poiché i file .so sono entità temporali che devono essere all'interno dei file .apk.
C'è un modo in cui potrei ridurre le dimensioni di file .so o usarlo / costruiscilo nel mio .apk in modo migliore?
Ho ottenuto un punto da qui http://Developer.sonymobile.com/2012/01/31/tips-for-Raducing-apk-file-size/ IE per rimuovere i simboli di debug dal codice nativo.
Soluzione
The Play Store ti consente di Carica APK separati per architettura della CPU . Quindi avresti un APK APK e un APK X86, piuttosto che un APK con entrambi.
Impostazione di tali APKS è relativamente semplice con Gradle per Android - Utilizzare un http://tools. Product-sapori "rel=" noreferrer "> Sapore del prodotto per ogni architettura. Presumo che ci siano ricette per fare questo fuori da Gradle per Android, anche se sospetto che sia più coinvolto.
Un altro approccio è semplicemente non distribuire il .so
X86. I moderni dispositivi Android a motore X86 tendono ad avere libhoudini
, che consente loro di utilizzare le librerie NDK di .so
del braccio. Tuttavia, come con l'emulatore Android, il braccio emulante su x86 è lento, quindi è necessario testare e vedere se la tua app esegue accettabilmente su x86.
E, come suggerisce il signor Stratton, in particolare se le biblioteche sono le tue, vedere se è possibile tagliare la dimensione della libreria stessa. Proguard non spunta il codice nativo nel modo in cui strisce il codice Java.