root は必要ですか?
いいえ。root は不要で、使用もしません。Android の開発者向けオプションで、Mock Location を仮の現在地情報アプリとして一度選ぶだけです。
いいえ。これは妥協ではなく、仕組みそのものの性質です。Android は当初から開発とテストのために仮の位置情報をサポートしています。システムは選ばれた 1 つのアプリにテスト用のプロバイダーの登録と座標の書き込みを許可し、通常の方法で位置を尋ねるすべてのアプリにその座標を渡します。
アプリはほかのプロセスに干渉したり、システムライブラリを書き換えたりしません。あなた自身が開発者向けオプションでオンにした、公式に提供されている機能を使います。そのため、ブートローダーのロック解除も Magisk も Xposed も必要ありません。
ファームウェアの改変で根本的に加わるのは、偽装の事実を隠す能力だけです。つまり、置き換えられた座標を本物と見分けるための「仮の情報源」フラグを取り除くことです。それ以外のことは、標準の仕組みで root なしにできます。
その能力の代償は大きいものです。保証を失い、一部の銀行アプリやサービスがシステムの完全性チェックのために起動しなくなり、ファームウェアのアップデートが正常にインストールできなくなり、書き込みに失敗するとスマートフォンが使えなくなることもあります。Mock Location は標準の仕組みの範囲内だけで動作し、その方法はサポートしていません。
実際的な結論:root なしでは、偽装はそれを見ようとするアプリにはそのまま見えます。地図、天気、周辺検索、開発中・テスト中の自分のアプリは動作します。位置が事実の証明になるサービス(配達、勤怠管理、位置に応じた特典)は通常動作しませんが、それはサービス側の意図的な選択で、欠陥ではありません。詳しくは root なしの位置偽装の記事 と、アプリに実際の座標が見える理由 の質問をご覧ください。