ZenithがAndroidの利用時間へ介入する仕組み
マテリアル デザイン 3 の表現力豊かなデジタル ウェルビーイング アプリ。 Zenith - マテリアル デザイン 3 表現力豊かなデジタル ウェルビーイング アプリ Zenith は、マテリアル デザイン 3 表現力豊かで構築された Android 用のスマート デジタル ウェルビーイング アシスタントです。
ひと目でわかる
- これは何?
- Shield、Focus、就寝時間、Webサイト追跡を組み合わせるデジタルウェルビーイングアプリの権限と導入条件を読む。
- 誰に向いている?
- アプリやWebサイトの利用に一時停止を挟み、Android上で自分のルールを運用したい人に向く設計です。採用前に使用統計とオーバーレイの表示、再起動後の監視、通知遮断、電池最適化、バックアップ復元を実機で順に確認し、必要最小限の権限だけを許可してください。
- 商用利用できる?
- 条件付きでできます。GPL-3.0 はコピーレフトのライセンスで、これを含むソフトウェアを配布する場合、そのソフトウェアのソースコードを同じライセンスで公開する必要があります。配布せず社内で使うだけなら、この義務は生じません。
- 今もメンテナンスされている?
- されています。最後のコミットは 1 日前です。
- 何の言語で書かれている?
- 主に Kotlin です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
制限を一回のブロックで終わらせない
ZenithはMaterial Design 3 Expressiveを使うAndroid向けデジタルウェルビーイングアシスタントです。READMEはリアルタイム監視とproactive interventionで、習慣的なスクロールを中断すると説明しています。Shield Modeは特定アプリにmindful pause、使用頻度の上限、緊急利用枠を設定します。Goal Pursuitは生産的アプリの目標時間と全画面ロックを扱い、Delay Appは再開前に待ち時間を置きます。Mindful Gatewayはホワイトリスト外のアプリを対象にするため、個別制限と全体制限のどちらを選ぶかを先に決めます。
時間割と就寝時間の制御
Bedtime Modeにはカスタムスケジュール、Wind Down通知、自動Do Not Disturbがあり、Focus SessionsとSmart Schedulesは時間帯ごとにBLOCKまたはALLOWを選び、通知を遮断します。Grace Periodでは全アプリを一時的に解除できます。Incentive Lockは目標達成に応じて5段階でShieldを解除し、Early Kickは期限前の通知または退出を選べます。これらは相互に時間条件を持つため、設定を増やす前に一つのアプリ、一つのFocus時間、就寝時間を作り、重なったときにどの介入が表示されるかを確認してください。
アプリだけでなくWebも対象にする
Website Tracking & Shieldingは特定Webサイトの利用時間を追跡し、12以上のブラウザでドメインへShieldを適用するとREADMEにあります。Session HUDは現在のセッション残り時間をフローティング表示し、サイズと不透明度を調整できます。ウィジェットはアプリのstreakと日々のfocus進捗をホーム画面に表示し、Notification Insightsは日次の要約、週次の傾向比較、節目を扱います。ブラウザごとの遮断範囲やWebViewの扱いはREADMEの機能説明だけでは確定しないため、対応ブラウザを実端末で一つずつ試します。
監視を成立させる必須権限
必須権限にはPACKAGE_USAGE_STATS、SYSTEM_ALERT_WINDOW、QUERY_ALL_PACKAGES、POST_NOTIFICATIONS、ACCESS_NOTIFICATION_POLICY、FOREGROUND_SERVICE、USE_FULL_SCREEN_INTENT、WAKE_LOCK、RECEIVE_BOOT_COMPLETEDがあります。使用統計は時間計測、オーバーレイはShield表示、アプリ一覧は対象選択、通知とDo Not Disturbは予定された介入、Foreground ServiceはAppUsageMonitorServiceとアラームを担います。全画面インテントとWake Lockはアラームや目標通知を画面上に出すため、起動後に許可画面を閉じただけで完了とせず、制限アプリを開く、再起動する、アラームを鳴らすという順で権限の効果を確かめます。
任意権限、ビルド、GPL
Accessibility Serviceは制限アプリの検出を速め、Notification ListenerはFocusや就寝中の通知を隠します。Battery Optimizationの除外はバックグラウンド監視、SCHEDULE_EXACT_ALARMはリセットと予定、READ_EXTERNAL_STORAGEはバックアップ、INTERNETは更新確認やリンク、READ_CALENDARは遅延画面の現在イベント表示に使われます。導入はAndroid Studio Ladybug 2024.2.1以降、Android SDK 33以上、物理端末での実行がREADMEの手順です。ライセンスはGPL v3.0で、性能ベンチマークとセキュリティ保証はREADMEにありません。必要な権限を絞り、設定のBackup & Restoreを復元できることまで確認して採否を決めます。
権限を一つずつ有効にして挙動を見る
Zenithは多くのAndroid権限を使うため、インストール直後にすべてを許可するのではなく、機能と権限の対応を実機で確認します。PACKAGE_USAGE_STATSだけを許可した状態で時間計測が進むか、SYSTEM_ALERT_WINDOWでShieldが他アプリ上に表示されるかを試します。次にAccessibility Serviceを有効にした場合の検出速度、Notification Listenerで隠れる通知、Battery Optimization除外後のバックグラウンド継続を比較します。RECEIVE_BOOT_COMPLETED後にスケジュールとAppUsageMonitorServiceが戻るか、SCHEDULE_EXACT_ALARMで日次リセットがずれないかも記録します。Backup & Restoreでは設定とscheduleが同じ端末へ戻ることを確認し、READ_CALENDARを許可する場合は表示されるtitle、description、progressの範囲を確認します。
再起動と復元を含む端末試験
ZenithのShieldを一つのアプリへ設定し、使用統計とオーバーレイを許可した状態で上限到達、緊急利用枠、Delay Appの再開待ちを試します。Focus SessionsのBLOCKとALLOW、Bedtime ModeのDo Not Disturb、通知インターセプトが同じ時間帯に重なった場合の表示を記録します。端末を再起動してRECEIVE_BOOT_COMPLETED後にAppUsageMonitorServiceとalarmが戻るかを確認し、Battery Optimizationの有無で計測が変わるかを比較します。Backup & Restoreでschedule、streak、アプリ設定を戻し、Calendar accessを許可したときの現在イベント表示も確認します。Android Studio Ladybug、SDK 33以上、物理端末で実行し、不要なAccessibilityやQUERY_ALL_PACKAGESを許可しない構成の差も記録します。
介入の優先順を実機で確認する
Shield、Delay App、FocusのBLOCK、Bedtime Modeを一つずつ設定し、同じ時間帯に重なる通知とオーバーレイを記録します。再起動後のAppUsageMonitorService、正確なalarm、Backup & Restore、Calendar表示を試します。SYSTEM_ALERT_WINDOWなど必須権限とAccessibilityなど任意権限を分け、Android Studio LadybugとSDK 33以上の物理端末で確認します。実施記録には対象版と入力条件を残し、成功した結果だけでなく失敗した場合の出力も保存します。設定を変更した前後で同じ確認を繰り返せるようにし、READMEに書かれた機能と自分の環境で確認できた事実を分けます。採用判断では、導入できたかだけでなく、更新、障害、切り戻し、権限、ライセンスを同じ担当者が追跡できるかを確かめます。 QUERY_ALL_PACKAGESやSYSTEM_ALERT_WINDOWは端末のプライバシーと操作に関わるため、機能上の必要性を確認してから許可します。ライセンスはGPL v3.0で、READMEに性能ベンチマークやセキュリティ保証がない点を本番判断と分けて扱います。
編集部の結論
アプリやWebサイトの利用に一時停止を挟み、Android上で自分のルールを運用したい人に向く設計です。採用前に使用統計とオーバーレイの表示、再起動後の監視、通知遮断、電池最適化、バックアップ復元を実機で順に確認し、必要最小限の権限だけを許可してください。
コミュニティノート