Android etc1toolのPNG画像変換pkmとzipalignの紹介

著者について: CSDN コンテンツ パートナーおよび技術専門家であり、毎日数千万人のユーザーが利用する APP をゼロから構築しました。
Java バックエンド、モバイル開発、ビジネス実現、人​​工知能などに特化した、さまざまな分野のオリジナル シリーズ記事の共有に焦点を当てます。たくさんのサポートを願っています。

ここに画像の説明を挿入します

1. はじめに

基礎知識をまとめて学び、過去を振り返り、新しいことを学び続けます。

この記事ではAndroid etc1ツールの導入と使い方を記録します。
この記事では、Android zipalign コマンドの紹介と使用方法を記録します。

二、etc1tool

etc1tool は、PNG 画像を ETC1 圧縮標準形式 (PKM) にエンコードし、ETC1 圧縮画像を PNG にデコードするために使用できるコマンド ライン ユーティリティです。

簡単に言うと、png画像形式とpkm画像形式を相互に変換することです。

Android の pkm 形式のファイルは、assets ディレクトリに配置して読み取ることができます。

2.1. 使用方法

etc1tool infile [--help | --encode | --encodeNoHeader | --decode] [--showDifference
diff-file] [-o outfile]
オプション 説明する
インファイル 圧縮する入力ファイル。
-ヘルプ 使用状況情報を出力します。
-エンコード PNG ファイルから ETC1 ファイルを作成します。モードが指定されていない場合、これがこのツールのデフォルト モードになります。
–encodeNoHeader PNG ファイルから生の ETC1 データ ファイル (ヘッダーなし) を作成します。
–デコード ETC1 ファイルから PNG ファイルを作成します。
–showDifference 差分ファイル 元の画像とエンコードされた画像の差分を diff ファイルに書き込みます。このオプションはエンコード時にのみ機能します。
-o 出力ファイル 出力ファイルの名前を指定します。outfile が指定されていない場合、出力ファイルの名前は、入力ファイルの名前に適切な接尾辞 (.pkm または .png) を加えたものになります。

etc1ツール

3.ジップアライン

zipalign は、アーカイブ内のすべての非圧縮ファイルがファイルの先頭を基準にして位置合わせされるようにする zip アーカイブ位置合わせツールです。

これは、Android Gradle Plugin (AGP) を使用して Android Studio からビルドするときに自動的に行われます。

次の記事では主にカスタム ビルド システムの使用について説明します。

3.1 使用方法

APK に共有ライブラリ (.so ファイル) が含まれている場合は、-p を使用して、それらが mmap(2) に適した 4KiB ページ境界に合わせられるようにします。
zipalign の必須アライメント パラメータによってアライメントが決定されるその他のファイルの場合、Android Studio は 32 ビット システムと 64 ビット システムの両方で 4 バイトにアライメントします。

infile.apk を調整して outfile.apk として保存するには、次のコマンドを実行します。

zipalign -p -f -v 4 infile.apk outfile.apk

既存の .apk の位置合わせを確認するには、次のコマンドを使用します。Android Studio または AGP を使用してビルドしている場合は、このコマンドを使用して APK が調整されていることを確認する必要があります。

zipalign -c -v 4 existing.apk
オプション 説明する
-c アライメントのみがチェックされます (ファイルは変更されません)。
-f 既存の出力ファイルを上書きします。
-h ツールのヘルプを表示します。
-p 非圧縮 .so ファイルをページ揃えにします。
-v 詳細な出力。
-z Zopfli を使用して再圧縮します。

ジップアライン

4. 推奨読書

Java 列

SQL列

データ構造とアルゴリズム

Android学習コラム

DD

おすすめ

転載: blog.csdn.net/fumeidonga/article/details/133042096