「Xamarin.Mac/アクセシビリティの許可の有無を取得する」を編集中
ナビゲーションに移動
検索に移動
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
1行目: | 1行目: | ||
[[Mac OS X]]のGlobal Event Monitorなどの一部の[[API]]は[[システム環境設定]]にあるアクセシビリティの許可がされていない状態では機能しない。 | [[Mac OS X]]のGlobal Event Monitorなどの一部の[[API]]は[[システム環境設定]]にあるアクセシビリティの許可がされていない状態では機能しない。 | ||
− | |||
恐ろしいことにアクセシビリティの許可がされていない状態でGlobal Event MonitorなどのAPI呼び出しを行ってもスルーされるだけで[[エラー]]も何も発生しない。 この挙動は確実に半年くらいしてどんな実装だったかを忘れたころにトラブルになり、[[エラー]]も出ないので[[デバッグ]]も捗らず原因不明の[[バグ]]に悩まされ、[[デスマーチ]]突入は決定的である。 | 恐ろしいことにアクセシビリティの許可がされていない状態でGlobal Event MonitorなどのAPI呼び出しを行ってもスルーされるだけで[[エラー]]も何も発生しない。 この挙動は確実に半年くらいしてどんな実装だったかを忘れたころにトラブルになり、[[エラー]]も出ないので[[デバッグ]]も捗らず原因不明の[[バグ]]に悩まされ、[[デスマーチ]]突入は決定的である。 | ||
これを回避するためアプリ起動時にアクセシビリティの許可がされているかを確認し、未許可であれば警告を出す必要がある。 | これを回避するためアプリ起動時にアクセシビリティの許可がされているかを確認し、未許可であれば警告を出す必要がある。 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==実装:ApplicationServicesフレームワークを使用する== | ==実装:ApplicationServicesフレームワークを使用する== | ||
82行目: | 60行目: | ||
==関連項目== | ==関連項目== | ||
− | |||
*[[Xamarin.Mac/Global Event Monitorでキー入力を監視する]] | *[[Xamarin.Mac/Global Event Monitorでキー入力を監視する]] | ||
*[[Xamarin.Mac/OSのバージョンを取得する]] | *[[Xamarin.Mac/OSのバージョンを取得する]] |