Android NavbarホームキーとしてGIFを使用する方法
Androidコミュニティの優秀な人たちは、ホームキーとしてアニメーション.gifを使用するようにnavbarを変更する方法を考え出しました。Appualsがそれを行うためのガイドを用意しています。
警告: これはかなり複雑なプロセスです。 SystemUI.apkを逆コンパイルし、いくつかの重要なファイルを台無しにして、一緒に再コンパイルする必要があります。 何かがうまくいかない場合に備えて、SystemUI.apkのバックアップを作成してください!
関連Appualsガイド:
- AndroidシステムUIを手動でテーマ設定する方法
- Android APKをデコンパイルおよびテーマ化する方法
- ストックROMでAPKをデオデックスする方法
要件:
- 根ざしたAndroidスマートフォン(AppualsにはAndroidルートガイドがたくさんあります!)
- APKデコンパイルツール(APK Easy Tool を推奨 )
- Notepad ++のような優れたコードエディター
SystemUI.apkの逆コンパイル
最初に行う必要があるのは、SystemUI.apkをdeodexすることです。これには、Tickle My Androidなどのツールを使用できます。 このプロセスでAPKをデオデックスするためのAppualsガイドをお読みください。
次のステップは、SystemUI.apkを逆コンパイルすることです。これは、これまでに行ったことがない場合は単独でガイドを必要とします。幸運なことに、Appualsには、 'APKを以前にデコンパイルしていません。
SMALIファイルの追加
ここで、新しいsmaliファイルを追加する必要があります。ここで必要なことを正確に行うために、既に変更された.smaliファイルのパックがあります。 具体的には、.zipから「SelfAnimatingImageView.smali」ファイルを抽出し、ディレクトリ内のデコンパイル済みAPKに追加する必要があります。
SystemUI.apk \ smali \ com \ android \ morningstar \
これらのフォルダーが存在しない場合は作成する必要があります。
GIFをフレームに分割する
ここで、好きなアニメーション.gifを見つけて、ナビゲーションバーのホームボタンとして使用する必要があります。 Giphy.com/stickersで見られるようなステッカーGIFを使用する必要があります。PNGのような透明な背景がありますが、実際にはGIFです。
好きなステッカーGIFを保存したら、それを一連のPNGに変換する必要があります。 これは、変更したSystemUIが実際にネイティブの.gifファイルを実行せず、PNGを順番に再生するためです。 そのため、.gifを連続したPNGに分割する必要があります。幸いなことに、EZGIF Splitなどのオンラインコンバーターを使用して非常に簡単にこれを行うことができます。
GIFをEZGIF分割ツールにアップロードし、[分割オプション]ドロップダウンメニューから[画像をPNG形式で出力]を選択すると、すべてのフレームが順番に抽出されます。 次に、フレームをZIPファイルにまとめてダウンロードできます。
次に、分割GIFのPNGフレームを、デコンパイルされたSystemUI apkフォルダー内の適切な「 drawable-xxxDPI 」フォルダーに追加する必要があります。 使用するフォルダーは、デバイスのDPIによって異なります。したがって、
- MDPI =〜160 DPI
- HDPI =〜240 DPI
- XHDPI =〜320 DPI
- XXHDPI =〜480 DPI
- XXXHDPI =〜640 DPI
ここで、アニメーションに使用する画像と、それらの画像をどれだけ速く循環させるかをAndroidに指示するXMLファイルが必要です。 前にダウンロードしたZIPに戻り、「frame_anim.xml」を取得して、逆コンパイルしたAPK内の「res \ drawable」フォルダーにコピーします。
Notepad ++でframe_anim.xmlを開くと、次のようになります。
で始まる各行 最後に、SystemUI.apkを再コンパイルする前に、アニメーションをnavbarに配置する必要があります。 レイアウトXMLファイルを編集するため、これは少し注意が必要です。 ほとんどの標準ROMでは、HOME navbarソフトキーを制御するコードは「layout \ navigation_bar.xml」にありますが、「layout \ home.xml」にもある場合があります。 ROMに応じて、これを探し回る必要があります。 基本的に、次のようなコードを含むレイアウトXMLファイルを探しています。 home_buttonなどを参照する行が表示されると、正しいXMLファイルにいることがわかります。 行う必要があるのは、このHOMEキーを非表示にし、同じサイズであるが見えない新しいキーをその場所に配置することです。そうすると、アニメーションフレームがその下に入ります。 これは実際には非常に簡単で、必要なのはFrameLayoutコードのみです。 このコードを調べると、3つの異なるものが互いに重なり合っていることがわかります。 ただし、アプリの実行中は表示されません。表示されるのは、ホームバーがnavbarにあるアニメーションGIFだけです。 したがって、必要なことは、コードのHOMEソフトキー行を上記のFrameLayoutコードに置き換えることだけですが、特定のROMに合わせて調整する必要がある場合があります。 ここで少し試行錯誤が必要です。 これで、改造されたAPKを再コンパイルする準備が整いました。 APK Easy Toolを使用してSystemUI.apkを再コンパイルし、デバイスのリカバリモードでフラッシュします。 Dalvikキャッシュを消去する必要があるため、リカバリモードでこれを行うことが重要です。そうしないと、追加した新しいsmaliファイルがアクティブになりません。 すべてがうまくいけば、アニメーションGIFが新しいnavbarホームキーとして表示されるはずです。APKを再コンパイルしてフラッシュする