2013-03-04 1 views
5

Androidはraw XMLリソース、つまりres/xmlディレクトリのものを圧縮しますか?Androidは生のXMLリソースを圧縮しますか?

assetsにいくつかのリソースがあり、res/xmlに移動する予定です(ローカライズすることができます)が、圧縮されるかどうかはわかりません。

私はいくつかのapkを解凍することでこれを確認できますが、誰かがすでに知っていると思いますか?

答えて

1

Brian Hardyのブログ記事thisをご覧ください。すべての "圧縮可能なファイル"は、圧縮されたxmlファイルです。 Xmlファイルはaaptによってバイナリ形式に圧縮されます。ファイルを圧縮したくない場合は、ファイルタイプの1つとしてブログポストに保存することができます。また、データを.zipファイルにパッケージ化して(アンドロイドはそれを圧縮しようとはしません)、それを読んだときに解凍してください。

+0

それでは、R.xmlリソース上でXmlパーサを使用すると、Abdroidは必要なリソースを解凍して解析します。 –

+0

いいえ、解凍しません。 xmlファイルは圧縮されていません。圧縮されたバイナリ形式に変換されます。 android.content.res.Resourcesで定義されているメソッドは、この形式を解析できます。たとえば、[this](http://developer.android.com/reference/android/content/res/Resources.html#getXml(int))メソッドは、aaptで指定されたIDを使用して汎用XMLファイルを解析できます。ビルド時間。 –

関連する問題