このツールについて
Android 端末を Chromium 系ブラウザに USB でつなぐと、このページがそのセンサーを読み取ります。ハードウェアが備える全センサーの一覧、加速度・ジャイロ・地磁気・気圧・環境光のライブ値、各サーマルゾーンの温度、そしてタッチパネル自身のイベントから描いた指の動き。端末には何も入れず、どこにもアップロードしません。このページはサーバーを持たない静的ファイルで、読み取った値はタブを閉じれば消えます。
ブラウザが環境光センサーを読めない理由
Generic Sensor API は、許可を求めたうえで加速度・ジャイロ・地磁気をウェブページに渡します。渡さない唯一のものが環境光です。AmbientLightSensor は Chrome ではフラグの裏に入ったまま既定で有効になったことがなく、Safari も Firefox も実装していません。理由はプライバシーで、明るさの値からいる場所が推測でき、十分に速く読めば近くの画面に何が映っているかまで漏れる、という議論です。つまりウェブの世界では照度は取れません。一方 ADB ならシステムのダンプの 1 行にすぎません。デバッグ経路は同じ種類の境界として設計されていないからです。読み取る shell は、自分の手で有効にし、ケーブルでつなぎ、手に持っている端末のものです。この差こそが、このページがこの形で存在する理由です。
ポーリングのスナップショットは高速サンプリングではない
ここのライブ値は dumpsys sensorservice から来ます。各センサーが直近に出したイベントを数十件、リングバッファに書き出す仕組みです。このページは 1〜2 秒に 1 回そのバッファを読み、新しいイベントだけをグラフに足します。位置はハードウェアが付けたタイムスタンプなので、1 秒に 1 回の読み取りでも十数点が描けます。できないのは「取りこぼしがない」と保証することです。200 Hz で動くセンサーは読み取りの合間にバッファを一周させ、あふれたイベントは戻りません。だからここが示すのは波形ではなく、形と偏りです。全サンプルが要るなら端末側でリスナーを登録するアプリが必要で、shell の権限では代われません。ページは 1 回あたりの負荷も表示します。あのダンプは数十キロバイトのテキストで、毎秒引くのは端末にとって本物の仕事だからです。
センサー一覧に測定範囲・分解能・消費電流が出ない理由
この一覧はプラットフォームが印字するものを見せているだけで、そのプラットフォームは面白い項目のうち 3 つを、ずっと前から印字しなくなりました。maxRange、resolution、power はセンサーのオブジェクトには存在し、同じダンプの protobuf 版にも入っていますが、テキスト版は Android 8.1 のあたりから運んでいません。ですから Pixel ではこの 3 列がどのセンサーでも空です。空欄をダッシュで埋めると「この加速度センサーには測定範囲がない」と読めてしまうので、このページは列ごと消し、理由を下に書きます。書き戻すメーカーもあります。Samsung のビルドは範囲・分解能・ミリアンペアの消費電流をよく印字し、その場合は列が復活します。残りはセンサー HAL が列挙したもの、つまりハンドル、ベンダー部品名、Android の型、報告方式、最小遅延、最大レート、FIFO の深さ、そしてスリープ中の端末を起こせるかどうかです。
圧力と接触面は、ウェブが渡してくれないもの
タッチパネルの節は端末のタッチパネルから getevent を流し込み、それを指として組み立て直します。届くのは座標だけではありません。ABS_MT_TRACKING_ID はカーネルが各接触点に割り当てる識別子で、これがあるから 1 本の指を画面上で追えます。ABS_MT_PRESSURE はパネルが考える押しの強さで、単位はパネルが勝手に決めたものです。ABS_MT_TOUCH_MAJOR は接触楕円の幅で、端末が指先と手のひらを見分ける手がかりです。ブラウザのタッチイベントはこのどれも当てになりません。force はほとんどの環境で未実装か合成値ですし、radiusX は大まかな推定です。すべてのパネルが返すわけでもありません。圧力をまったく報告しない静電容量パネルは珍しくなく、このページはその事実を書きます。全部同じ濃さで描いて、何かを測ったように見せることはしません。
これは診断のための表示で、校正ツールではありません。パネルの挙動を変えることはできませんし、座標が飛んだからといってタッチパネルの故障とは限りません。汚れた画面、ノイズを載せる安価な充電器、縁を押さえるケース、どれも同じ絵になります。得意なのは生の事実を素早く見ることです。反応しない領域が本当に何も返していないのか、幽霊タッチに追跡 id が付いているのか、置いたままのジャイロが流れていないか。ここから先は、Web ADB ハブに端末ダッシュボードが、電池のページに容量と充放電回数が、そしてブラウザだけで動く画面テストに表示そのものの確認があります。