MonoBehaviour.OnApplicationFocus() で調べることができるんだけども…。
公式のスクリプティングマニュアルから説明を抜粋。
プレイヤーの取得またはフォーカスを失った時に全てのゲームオブジェクトに送信されます。
void OnApplicationFocus(bool focusStatus) {
paused = focusStatus;
}
この focusStatus が true の時にフォーカスを得たという意味なのか、失ったという意味なのか分からない。
マニュアルでも明示していない。
上記の使用例だと、逆の意味を持つ paused という名前のフィールドに focusStatus の値を代入しているのでどっちなのか余計に混乱する。
実際にスクリプト書いて値を調べたところ、フォーカスを得たときに true になり、失ったときに false になると分かった。
4.x を使用