Quando aggiungo un file GZIP alle risorse del mio progetto Android, l'estensione ".gz" viene eliminata quando il progetto è impacchettato. (Quindi, ad esempio, "foo.gz" nella mia cartella delle risorse deve essere accessibile nel codice usando getAssets().open("foo")
.) Questo non sembra accadere con altre estensioni (ad es. ".html") che sto usando. La risorsa è ancora GZIP-edita (devo legare il flusso di input in un GZIPInputStream per leggerlo).Perché Android aapt rimuove l'estensione di file .gz delle risorse?
Questo comportamento standard o un bug? Se è standard, c'è qualche documentazione su quali estensioni sono rimosse e quali sono preservate?
EDIT: ho errato le cose a prima vista. Sto riscontrando questo problema con il plug-in Eclipse. Non ho provato a eseguire direttamente aapt per vedere se il problema è con lo strumento stesso o con il modo in cui il plug-in lo sta usando.
Lo strumento Android pacchetto risorsa (aapt) riconosce gz file e li aggiunge al .zip senza ri-comprimere (cioè toglie l'intestazione gzip e cade in una voce "compresso" in l'archivio zip, questo è un ottimizzazione del tempo di costruzione). Il comportamento che stai descrivendo sembra diverso. – fadden
Spogliare l'estensione .gz sembra particolarmente programmatore-scostante. Inoltre, l'archivio .apk ha il file nella stessa posizione nella cartella delle risorse come con qualsiasi altro nome. –
Questo sembra essere intenzionale (basandosi solo sul nome del file) all'interno di aapt, Forse il pensiero era che se è gzip .... quindi confondere la gente? http://www.google.com/codesearch#uX1GffpyOZk/tools/aapt/Package.cpp&exact_package=git://android.git.kernel.org/platform/frameworks/base.git&q=%22Writing%20all%20files%22&type = cs & l = 309 –