このサードパーティ ライブラリは、Android 12 のマテリアル ユー テーマをあらゆるアプリにもたらします

click fraud protection

Material You の動的テーマ機能をアプリに統合したいですか? このライブラリを使用すると、Android 12 より古いデバイスでも追加できます。

マテリアル・ユー は、Google のデザイン言語の最新リビジョンです。 Google は、「マテリアル ユー」でパーソナライゼーションを重視しています。 アンドロイド12、色を使用して UX の色を変更する新しい動的テーマ システムがあります。 壁紙から抽出した. コードネーム「monet」と呼ばれるこのダイナミックなテーマシステムは、 Android 12 Beta 2 がリリースされましたただし、Google はまだ API や実装の文書化、サポート ライブラリの提供、API を対象としたアプリの公開に Google Play を開放していません。 レベル 31 (Android 12) であるため、大多数の開発者は動的テーマをサポートするようにアプリを適応させることさえ考えていません。 システム。

そういう意味ではありません いいえ ただし、開発者は Android 12 のテーマ システムをいじっています。 の開発者は、 人気の自動化アプリ Tasker さんは、Android 12 の公式 API を使用して、アプリでの動的なテーマのサポートを実証しました。 一方、別の開発者 kdrag0n は、 システム全体を再構築しました 彼独自の色抽出とパレット生成アルゴリズムを使用しています。 Kdrag0n はテーマ エンジンのソース コードを共有し、古い OS バージョン用に構築されたサードパーティ アプリが「monet」に対する彼の見解を実装できるように、Jetpack Compose と Flutter ライブラリに取り組んでいます。

現在、XDA 認定開発者 クイニー899 kdrag0n のカスタム "monet" 実装に基づいた独自のライブラリを作成しました (つまり、 その ない Google のテーマ エンジンに基づいています)。 開発者は、この MonetCompat ライブラリをアプリに統合して、ユーザーの壁紙に基づいてアプリの UI を動的にテーマ設定するためのサポートを追加できます。 このライブラリは、Android 5.0 以降 (互換モードで Palette API を使用) および通常モードの Android 8.1 Oreo 以降を実行しているデバイスで動作します。 プラットフォーム API の制限により、ライブラリは Android 8.1 より前のバージョンのライブ壁紙から色を抽出できません。

開発者がこのライブラリを使用する理由については、Quinny899 自身がプロジェクトの GitHub ページで説明しています。 「また、Google が Android 12 のリリースに合わせて Monet 向けに独自の下位互換性ライブラリを提供するかどうかも現時点では不明であるため、このライブラリは最終的には公式のものに置き換えられる可能性があります。 このプロジェクトでは独自の Google コードは使用されていないため、サードパーティのアプリで使用するために MIT ライセンスが付与されています。」

MonetCompat を使用する最初のアプリは、もちろん Quinny899 自身の DarQ アプリです。 DarQ は、Android の強制ダーク モード設定をアプリごとに切り替えることができるアプリです。 それ 元々使用されていたルートアクセス システムプロパティを設定しようとしましたが、 更新しました ユーザーの PC 上で実行される ADB シェル スクリプトを使用し、ルート要件を削除します。 DarQ 2.0 では、アプリが統合されたため、ユーザーは PC から ADB スクリプトを実行する必要がなくなりました。 しずく. Shizuku は、他のアプリが ADB シェル ユーザー権限でシェル コマンドを実行したり API にアクセスしたりできるようにするアプリおよびサービスです。ADB シェル アクセスを目的とするスーパーユーザー管理アプリと考えてください。 Android 11 以降では、Shizuku サービスは内蔵のワイヤレス デバッグ機能を通じて開始できるため、DarQ をセットアップするために PC はまったく必要なくなりました。 Shizuku への移行に伴い、DarQ も AccessibilityService ではなく ProcessObserver を使用するようになりました。 開発者は、DarQ がアプリを開いたときを検出できるようにする (つまり強制ダーク設定を適用する) と述べています。 素早く。

何らかの理由で、DarQ アプリ用に MonetCompat によって生成された色が気に入らない場合は、「DarQ 2.0」を 3 回タップして、アプリの開発者向けオプションを有効にすることができます。 ここで「Monet Color Picker」を選択して、アプリで使用する色を変更できます。

DarQ 2.0 変更ログ

  • DarQ 2.0 は、マテリアル ユー要素とモネ (壁紙ベース) の色を備えたまったく新しいデザインになっています。
  • ADB スクリプトは廃止され、代わりに Shizuku が非ルート デバイス上のサービスを処理します。 Shizuku が何なのかわからない場合は、非 root デバイス用のスーパーユーザー アプリのようなものだと考えてください。 起動ごとに 1 回、コンピューター (または Android 11 以降の携帯電話) で ADB 経由で Shizuku を起動すると、Shizuku を使用するすべてのアプリで ADB サービスを使用できます。
  • Accessibility Service は、Shizuku/Root サービスを使用する ProcessObserver に置き換えられました。 これはアクセシビリティよりもはるかに速いため、以前は開くのが早すぎてサポートできなかったアプリも動作する可能性があります。
  • 日の出/日没時の自動ダークテーマが改善され、さまざまなデバイスでより適切に動作するようになりました。
  • 強制ダークの使用をブロックし、それを阻止しようとするアプリの Xused モジュールを改善しました。

続きを読む

DarQ XDA フォーラム スレッド ||| GitHub の MonetCompat ライブラリ