この許可はほとんど完全に文書化されていないため、その真の意味への道を感じる必要があることに注意してください。したがって、これは決して「権威ある答え」ではありませんが、多かれ少なかれ「良い推測」と「他のポインタからの推論」の間の何かです。
この許可の公式説明(前述のとおり、これ以上のドキュメントはありません)は次のとおりです。
アプリケーションにGoogleサービスマップの変更を許可します。
これで、それが何を意味するのかを推測できます。そのための「リバースエンジニアリング」を実行して、その方向性を感じましょう。ライアンはすでに 2つのSO質問にリンクしている彼のコメントでいくつかのポインターを与えました:
行間を読む:アプリがGoogleサービスフレームワーク(の一部)を使用する場合は常に、READ_GSERVICES
必要なアクセス許可を宣言する必要があります。これは、必要なGET_ACCOUNTS
場合とほぼ同じUSE_CREDENTIALS
です。必要なサービスが利用可能であることをアプリが最初に確認する必要があります。アクセスする前に。
これにより、Googleサービスマップが何であるかがわかります。利用可能な(インストールされた)Googleサービスのインデックスのようなものです。
それWRITE_GSERVICES
がわかったので、アクセス許可の目的と、それがsystem
保護レベルによって保護される理由(つまり、「システムアプリ」にのみ許可される、つまり、ROMに統合されているもの)を推測できるようになりました。/system
パーティションにインストールされている場合):READ_GSERVICES
が利用可能なGoogleサービスを把握することを目的としている場合、そのサービスマップWRITE_GSERVICES
を更新するには、それが対応している必要があります。たとえば、新しいサービスがインストール(または削除)されるたびに、「デバイスで使用可能なGoogleサービスのインデックス」、つまり「Googleサービスマップ」を更新します。
このコンテキストで私が疑問に思うことの1つは、このアクセス許可がACCOUNTS
グループに属する理由です...
以下も参照してください。