問題
Androidを使っていて、インストール済みアプリが増えてくると、
ホーム画面やアプリ一覧の名前順表示だけでは目的のアプリを探しにくくなります。
とはいえ、そのためだけにPixel Launcher自体を別のランチャーへ
置き換えたいわけではありません。ウィジェットの配置やジェスチャーなど、
普段使っているランチャーの使い勝手はそのまま保ちたい、というのが正直なところでした。
欲しかったのは「ランチャーの外側」で、自分の基準でアプリを整理・絞り込みできる手段でした。
作ったもの
その用途のために作った補助アプリが Pixel Tag Drawer です。
- Pixel Launcher(や他のホームランチャー)を置き換えません
- HOMEランチャーとしては動作せず、通常のアプリの1つとして併用します
- 自分でタグを作成し、端末上の起動可能なアプリへ割り当て、タグで絞り込んで表示します
現在はPixel 10aで開発・実機確認しているv0.1.0のpre-releaseです。
ビルド設定上のminSdkは26(Android 8.0)ですが、他の端末やランチャーでの動作は未検証です。
主な機能
実装済みの機能は次のとおりです。
- タグの作成・名前変更・削除
- アプリへのタグ割り当て(個別・一括)
- タグによる絞り込み(複数タグのAND条件、「タグなし」絞り込みにも対応)
- アプリ名・パッケージ名による検索
- リスト表示とグリッド表示の切り替え
- 名前順、最近起動した順、起動回数順、おすすめ順への並び替え
- タグまたは「タグなし」の絞り込みを直接開くPinned Shortcut(ホーム画面に追加可能)
- タグ・割り当て・表示設定をまとめてバックアップ/復元できるExport/Import機能
Usage Access(使用状況へのアクセス)は任意
「最近起動した順」「起動回数順」「おすすめ順」の3つの並び替えだけは、
AndroidのUsageStats/UsageEventsを使って端末内で集計しています
(最近起動した順・起動回数順は直近30日、おすすめ順は直近7日を対象)。
これらを使うにはAndroidの設定画面から「使用状況へのアクセス」を手動で許可する必要があります
(通常のランタイム権限ダイアログでは許可できません)。
許可しなくても、検索・タグ整理・タグ絞り込み・名前順表示は使えます。
使用状況が必要な並び順を選んでいる場合は、名前順に自動でフォールバックします。
プライバシー
現在の実装はINTERNET権限を要求しません。UsageStatsのデータも含め、
すべて端末内で処理しており、外部サーバーへ送信する処理は実装していません。
analytics・telemetry・アップロード機能もありません。
Backup / Restore
v0.1.0からは、タグ・アプリへの割り当て・表示設定などをJSONファイルとして
手動でExport/Importできます。アプリの再インストールや端末移行など、
データを持ち越したい場面を想定しています。
なお、Androidの「使用状況へのアクセス」の許可状態と、ホーム画面のPinned Shortcutそのものは
Backup/Restoreの対象外です。復元後に手動で再設定が必要です。
インストールについて
GitHubのpre-releaseからAPKをsideloadする形式で配布しています。Google Playでの配布ではありません。
現時点でPixel 10aでのみ実機確認済みです。他の端末やランチャーでの動作は保証していません。
ソースコードとスクリーンショットを確認したうえで、必要な方だけ試していただければと思います。
スクリーンショット
すべての起動可能アプリをグリッド表示した状態です。
単一タグ(Google)で対象アプリを絞り込んだ状態です。
MediaとGoogleの複数タグをAND条件で絞り込んだ状態です。
タグの作成・並べ替え・名前変更・削除を行うタグ管理画面です。
ソース・リリース
- リポジトリ: https://github.com/iwadjp/pixel-tag-drawer
- v0.1.0 pre-release: https://github.com/iwadjp/pixel-tag-drawer/releases/tag/v0.1.0
配布APKのSHA-256は以下のとおりです。
0238fe1cb2d8df9f959930ece11c34b28cbbc8a2186d33e6f00eafb85b1eb0da
まだv0.1.0のpre-releaseで、検証端末も1台のみです。
使ってみた感想や、こういう使い方をしたい、といったissue・フィードバックがあれば、
GitHubリポジトリの方でいただけるとありがたいです。