microG
Google Play Serviceの代替を狙ったオープンソースプロジェクト。
OSとしてのAndroidや中核となるアプリケーション自体は、Android Open Source Projectによって開発がされているが、アプリケーションが使うための一部のAPIや機能はGoogle Play Serviceによって提供されている。
具体的にGoogle Play Serviceは以下の機能等を有している。
端末のGoogle Acoountの管理
Cast送信機能の実装
Firebaseの機能
Firebase Cloud Message(通知ーバー)機能
Maps API(生GPSデータを座標に変換する)
どれも、最悪Androidを動かすのなら必要ないが、ほとんどのアプリケーションを使う上では必須になっている、という状況。
microGでは、これらをオープンソースで再実装している。
microGのパッケージ
microGプロジェクトは、複数のパッケージを開発している。
まずは、Google Play Serviceの代替となるGMS Core。
そしてGoogle Service Frameworkの代替となるGSF Proxy。
これはPlay Serviceの一部で、主にGoogle Cloud Messageに使われる。
最後がNetwork Location Providerの代替であるUnified NLP。
これはwifiやbluetoothのビーコンから位置情報を特定する位置情報ライブラリ。GMS Coreに含まれているので別途インストールする必要はない。
microGのインストール
まず、GMS CoreとGSF Proxyをインストールする。リンクは以下。
https://microg.org/download.html
F-Droidからダウンロードしても良い。DroidGuardというパッケージもあるので、それも含めて3つインストールする。Unified NLPはGMS Coreに含まれているので不必要。
ダウンロードできたら、パッケージインストーラを使うなり、adb installを実行するなりすればいい。
補足だが、microGは権限不足で一部の動作が行えない(具体的にはUnified NLP周りらしい)ため、完全に動作させるにはシステムアプリ権限が必要。つまり、/system/priv-appへのインストールが必要。方法としてはMaigskのApp Systemizerなどがおすすめ。
Unified NLPのバックエンド
Google Play Serviceに含まれているNLP機能は、Googleのサーバーにwifiやbluetoothのビーコンを問い合わせて自分の付近の位置情報を特定するものであった。microGプロジェクトのGMS CoreのUnified NLPはこのバックエンドを自分で選べる。
具体的には以下。
https://github.com/microg/android_packages_apps_UnifiedNlp/wiki/Backends
好きなパッケージをインストールし、microGの設定画面から選択すればいい。
パッケージごとの説明は Unified NLP バックエンドへ。
#Android