メインコンテンツへスキップ

トップレベルのナビゲーションメニュー

はい、macOSの入力監視は強力な権限です。だからこそシステムは明示的なスイッチの向こうに置き、許可の前に警告します。キーボードサウンドアプリにはこの権限を求める正当な理由がありますが、「正当な分類」であることと「どのアプリも信頼してよい」ことは別です。

役に立つ問いは、アプリが入力監視を求めるかどうかそのものではありません。問うべきは、 アプリがイベントをどう観測し、何を保持し、何を送信できるのか、そしてその主張が技術的にできることと一致しているかどうか.

TypeLouderについて手短に言うと、リッスン専用のイベントタップを使い、AppleのApp Sandboxの中で動作し、ネットワーククライアントのエンタイトルメントを持たず、キーイベントはローカルの音を選んで鳴らすためだけに使います。文章を記録することも、入力履歴を保持することもありません。

macOSにおける入力監視の意味 #

Appleは入力監視を、ほかのアプリケーションを使っている間もキーボード、マウス、トラックパッドの入力を監視できるようにする権限だと説明しています。Appleの表現と現在の設定場所は、 Macで入力監視へのアクセスを管理する.

「ほかのアプリを使っている間も」という部分こそ、TypeLouderにこの権限が必要な理由です。自分の設定ウインドウがアクティブなときしかキーを見られないキーボードサウンドユーティリティは、Safari、メモ、Xcode、Slackなど別のアプリに戻った瞬間に働かなくなります。

この権限は、個々のキーイベントを見せうるものです。ダイアログを軽く扱うのは間違いです。ただしmacOSの権限は、能力の分類を表すものであって、その分類に属するすべてのアプリの振る舞いを表すものではありません。画面収録はプレゼンテーションツールにも監視にも使えますし、マイクへのアクセスはボイスメモにも盗聴にも使えます。大事なのは実装と、その境界です。

聞くことと、横取りすることは違う #

macOSにはいくつかのイベントタップの動作があります。アクティブなイベントタップはイベントの経路上に入り、イベントを書き換えたり抑制したりできる可能性があります。リッスン専用のタップは観測用のコピーを受け取るだけで、入力先のアプリに届く前の打鍵を変えることはできません。

TypeLouderは、キーボードのイベントタップをリッスン専用のオプションで作成します。打鍵はそれとは無関係に目的地へ進み、TypeLouderは対応する音を鳴らすのに必要な通知を受け取るだけです。入力された文字そのものを遅らせられないのも、これが理由です。

それでも、Bluetoothが絡むと が遅れて聞こえることはあります。ワイヤレス再生が、TypeLouderがサンプルを鳴らしたあとに遅延を加えるからです。これは出力側の遅延であって、アプリがキーを抱え込んでいるわけではありません。内蔵スピーカーか有線出力で試すのが、最もはっきり分かります。

TypeLouderがキーイベントに対して行うこと #

TypeLouderが音を説得力のあるものにするために必要な情報は、ごくわずかです:

  • キーが押されたのか、離されたのか。
  • 専用サンプルが有効なときに、そのキーがSpaceかReturnかどうか。
  • 1回の押下につき1つの音を鳴らすのに足りるだけの、イベントのタイミング情報。

その情報はその場で、端末の中だけで使われます。イベントから組み立てられるテキスト文書も、打鍵のログも、キーを含む解析データの送信もありません。

サウンドのサンプルはアプリに同梱され、反応よく再生できるようあらかじめ読み込まれます。インストールしてしまえば、TypeLouderがそれを鳴らすのにインターネットは必要ありません。

キーボード関連のユーティリティを信頼する前の3つの確認 #

1. 配布元を確認する #

Mac App Storeにあるからといってすべてのアプリが完璧だという保証にはなりませんが、署名、サンドボックス化、エンタイトルメント、審査という、どこかのダウンロードミラーには存在しない要件が課されます。TypeLouderはMac App Storeで配布されています。

2. プライバシーポリシーで具体的な挙動を確認する #

「プライバシーを大切にしています」という一文は、ほとんど何も語っていません。具体的な答えを探してください。キー入力は保存されるのか。送信されるのか。解析は入っているのか。オフラインで動作するのか。TypeLouderの プライバシーのページ には、アプリとブラウザのサウンドテストが何をするのかが書かれています。

3. そのアプリにネットワーク接続が必要かを考える #

TypeLouderはApp Sandboxの中で動作し、クライアントネットワークのエンタイトルメントを要求しません。サンドボックス化されたMacアプリでは、これによって外向きのネットワーク接続を開く通常の能力がなくなります。プライバシーポリシーの一文だけを信じてもらうより、強い保証です。

権限を取り消す方法 #

設定したあとも、主導権はこちらにあります:

  1. 開くのは システム設定.
  2. 選ぶのは プライバシーとセキュリティ.
  3. 開くのは 入力監視.
  4. TypeLouderをオフにします。

TypeLouderはグローバルなキーイベントを受け取らなくなるため、自身のコンテキスト外でのキーボード音は鳴らなくなります。ほかのMacアプリと同じように、アプリごと削除することもできます。

ブラウザのサウンドテストにそれが不要な理由 #

この TypeLouderのキーボードサウンドラボ は、そのウェブページがアクティブなあいだだけ反応します。ブラウザはすでに現在のページに送られたキーを把握しているので、このサイトにmacOSの入力監視は必要ありません。テストはブラウザ内で完結し、押したキーを記録することも送信することもありません。

そのため、このサウンドラボは、この考え方を試すのに最も信頼を預けずに済む方法になっています。Macアプリを入れる前、システムの権限ダイアログを見る前に、8つのパックすべてを聴けます。

実際的な答え #

システム全体で動くキーボードサウンドアプリにとって入力監視は妥当な権限ですが、説明のないまま求められてよいものではありません。なぜその権限が必要なのかをはっきり示し、イベントを横取りしない形で観測し、保持するものを最小限にとどめ、データが端末の外に出ることに技術的な制限があるソフトウェアを選んでください。

TypeLouderは、その境界を前提に設計されています。リッスン専用の観測、端末内での再生、App Sandbox、そしてネットワーククライアントへのアクセスなし。この考え方に納得できるなら、 まずはブラウザで音を試す 、権限を与えるだけの価値がある音に出会えてから、インストールすれば十分です。

よくある質問

キーボードサウンドアプリに入力監視が必要なのはなぜですか?

アプリは、ほかのアプリケーションで入力しているあいだもキーダウンのイベントを受け取る必要があります。システム全体のイベントにアクセスできなければ、自分のウインドウがアクティブなときしか音を鳴らせません。

入力監視を使うアプリは、どのキーを押したかを見られるのですか?

この権限は、キーコードを含むキーボードのイベントを見せうるものなので、慎重に確かめる価値があります。重要なのは、その個別のアプリがそれらのイベントを何に使うのか、データを送信できるのか、そしてリッスン専用のイベントタップを使っているのか、という区別です。

TypeLouderは入力した内容を記録しますか?

いいえ。TypeLouderは各イベントを端末内で音の選択に使うだけです。テキストを組み立てることも、キーの履歴を保存することも、イベントを送信することもありません。ネットワーククライアントのエンタイトルメントを持たないApp Sandboxの中で動作します。

入力監視の許可はあとから取り消せますか?

はい。システム設定を開き、プライバシーとセキュリティを選び、入力監視を開いて、TypeLouderをオフにしてください。ほかのアプリケーションでのキー入力に反応しなくなります。

← TypeLouderに戻る