ページ読み込み時に位置情報の許可を自動的に求めるページに対して、ユーザーは不信感を抱き、困惑します。
Lighthouse の位置情報監査が失敗する仕組み
Lighthouse は、読み込み時に位置情報の許可をリクエストするページにフラグを設定します。
Lighthouse は、ページ読み込み時に実行されるすべての JavaScript をチェックします。スクリプトが geolocation.getCurrentPosition() または geolocation.watchPosition() を呼び出し、位置情報へのアクセス権がまだ付与されていない場合、監査は失敗します。
監査の前にページに位置情報の権限が付与されている場合、Lighthouse は位置情報の権限リクエストを特定できません。そのため、監査を実行する前に、必ず権限をリセットしてください。
Lighthouse は、位置情報権限の各リクエストの URL と行番号をレポートします。
ユーザーの位置情報を責任を持ってリクエストする
ページの読み込み時に発生する geolocation.getCurrentPosition() と geolocation.watchPosition() の呼び出しをすべて削除します。
ユーザー エクスペリエンスを向上させるには:
- 位置情報の権限は、ページの読み込み時ではなく、ユーザーのアクションの後に常にリクエストします。
- 位置情報の権限をリクエストするアクションであることを明確に示します。
- ユーザーが位置情報を共有しないことを前提とします。
ユーザーが位置情報の利用許可を付与しない場合は、フォールバックを使用します。
詳しくは、ユーザーの位置情報をご覧ください。