microG:Google Play Services代替OSS
原題: MicroG: Free-libre re-implementation of Google's proprietary Android user space
なぜ重要か
脱Google化を求めるAndroidユーザーとプライバシー重視の開発者コミュニティにとって、実用的な代替インフラとして長年機能し続けている点に意義がある。
microG GmsCoreは、GoogleのプロプライエタリなPlay Servicesをフリーソフトウェアで再実装したプロジェクトだ。LineageOSなどAOSPベースのROMで動作し、Google APIを呼び出すアプリをGApps不要で利用可能にする。Apache 2.0ライセンスで公開され、バッテリー・メモリ・CPUへの負荷を抑えた設計を採用している。
microG GmsCoreは、Googleの非公開APIに依存するAndroidアプリを、Google Play Services(GApps)なしで動作させることを目的としたオープンソースプロジェクトだ。GitHubのリポジトリには現在1,300件超のIssueと119件のPull Requestが存在し、活発なコミュニティ開発が続いている。
仕組みの核心は「シグネチャスプーフィング」だ。Androidシステムがこれをサポートしていれば、GmsCoreは正規のPlay ServicesとしてアプリのGoogle API呼び出しに応答できる。LineageOSなど一部のカスタムROMは最初からこの機能を備えているが、そうでない端末向けにも対応策が用意されている。
主な機能として、Googleサービスへのオプトイン制御、オンライン・オフライン両対応のロケーションサービス、そしてUnified Network Location Provider(UnifiedNlp)モジュールが組み込まれている。UnifiedNlpはGoogleのネットワーク測位プロバイダへのアプリからの呼び出しを処理する。
Play Storeの代替としては「microG Companion」などのアプリを別途インストールする必要がある。プロジェクトは実機・テストエミュレータ・仮想モバイルインフラのいずれでも動作する点もアピールしている。
ただしプロジェクト自身も認めているように、microGを経由してGoogleサービスと通信するアプリが、内部でプロプライエタリなライブラリを使用している場合、プライバシー上の完全な遮断は保証されない。あくまでGoogle Play Servicesのプロセス自体を排除するツールであり、アプリ側のトラッキングまでは制御できない点に注意が必要だ。