TrailCam

ガイド

アプリを強制終了すると、GPS の記録は止まるのか

止まる。しかも、これは他の場面の挙動からは想像しづらい、GPS の記録が止まる数少ない原因のひとつだ。画面をロックしても止まらない。別のアプリに切り替えても止まらない。この二つが意外なほど平気なのは、位置情報を記録するアプリがその間もバックグラウンドで動き続けられるように iOS が作られているからにほかならない。アプリスイッチャーでアプリを上にスワイプして消す動作は、まったく別の指示であり、iOS が実際に従うのはこちらのほうだ。

短く答えると

アプリを強制終了すると、GPS の記録は止まる。記録中に画面をロックしたり、別のアプリを開いたりしても止まらない——バックグラウンドで位置情報を使う許可を持つアプリを、iOS がそのために生かし続けているからだ。アプリスイッチャーで上にスワイプして消す操作はまったく別の指示で、アプリのプロセスを完全に終わらせるよう iOS に伝えるものであり、あらかじめどんな許可を与えていようと、存在しなくなったプロセスに位置情報の取得を続けさせることはできない。

バックグラウンドに回すことと、強制終了することは別物

山行のほとんどの時間、GPS アプリは画面を消したまま、あるいはカメラや地図など別のアプリを前面に開いたまま、バックグラウンドで動いている。iOS はこれをわざとサポートしている。バックグラウンドでの位置情報の利用を許可されたアプリは、その間もずっと位置の更新を受け取り続けられる。画面をずっと開いておかなくてもルートを記録できるアプリの、まさに存在意義そのものだ。山行の途中で画面をロックしても、メッセージを確認しても、それだけでは何も中断されない。

強制終了はそれとは別の、意図的な操作であり、iOS もそう扱っている。アプリスイッチャーで上にスワイプして消す動作は、しばらく離れたいという意味ではなく、そのアプリを完全に終了させてほしいという明示的な指示として受け取られる。いったん iOS がそれを実行してしまえば、それまでアプリを生かしていたバックグラウンドの許可はもう意味を持たない。適用する先のプロセス自体が残っていないからだ。

アプリを上にスワイプすると、実際に何が起きるか

アプリのプロセスが終了させられる。その瞬間にやっていたこと——GPS の更新を受け取ることも含めて——はすべて即座に止まる。電話の中の他のどんな処理でも、プロセスが強制的に終わらされればそこで止まるのと同じことだ。iOS はここで位置情報アプリを特別扱いしない。強制終了はゲームでもブラウザのタブでも、スイッチャーに並ぶ他の何であっても、まったく同じように終わらせる。

これは、iOS 自身がメモリを空けるためにバックグラウンドのアプリを終了させる場合とは別の話で、こちらは GPS アプリが落ちたり不具合を起こしたりしなくても起こり得る。結果だけを見れば——どちらもアプリが動かなくなるという意味では——この二つの違いはあまり重要ではないが、片方は自分で選んでやったことだという点だけは違う。

それまで記録していたルートはどうなるか

これは iOS が何をするかではなく、そのアプリがすでに記録し終えた地点をどう扱っているかに完全に左右される。ルートをメモリ上に持っているだけのアプリは、プロセスが終了した瞬間にすべて失う。データがどこにも書き出されていなかった以上、他に残りようがないからだ。山行の最中に地点をその都度保存しているアプリなら、プロセスが終わらされたあとに何も追加されなくなるとしても、それまでに保存できていた分は残る。

これは実際の山行で起きてから知るのではなく、あらかじめ知っておく価値がある。すでに終了したアプリに、持っていたデータをどう扱っていたか、あとから尋ねる方法はないからだ。

勘違いしやすいところ

  • どんな中断でも GPS の記録が同じように止まると思い込む——画面のロックやアプリの切り替えでは止まらず、強制終了だけが止める。同じものと扱っていると、習慣で強制終了してしまい、本来は問題なく続いていたはずの記録を失うことになる。
  • スワイプして消したあとに記録が止まっていたのを、アプリの不具合のせいだと考える——それはプロセスを終わらせろという明示的な指示に iOS が従った結果であって、アプリの側の不具合ではない。
  • 山行の途中でバッテリーを節約しようと、記録アプリを強制終了する——これは実際に GPS の記録を止めてしまう。記録そのものを行っているプロセスを終わらせているからだ。一時停止する手段ではなく、終わらせる手段になっている。
  • ホーム画面にアプリのアイコンが残っているから、強制終了したあとも記録が続いていると思い込む——アイコンがそこにあることと、その裏のプロセスがまだ動いているかどうかは、まったく別の話。

TrailCam でできること

強制終了を含め、山行の途中で TrailCam が中断されたときは、途中まで記録していたルートを消えたものとして扱うのではなく、次にアプリを開いたときにそのまま差し出す。GPS のルート記録自体は、画面をロックしていても、別のアプリを前面に開いていても動き続ける。止まるのは、アプリのプロセスそのものが終わらされたときだけだ。TrailCam はダウンロード無料。

よくある質問

画面をロックするのは強制終了に含まれる?
含まれない。画面のロックはアプリをバックグラウンドに回すだけで、終了はさせない。バックグラウンドでの位置情報利用を許可されたルート記録アプリは、その間も位置の記録を続ける。プロセスを終わらせるのは、アプリスイッチャーで上にスワイプして消す操作だけだ。
誤って強制終了してしまったら、その山行の記録は完全に消える?
アプリによる。ルートをメモリ上にしか持っていないアプリなら、プロセスが終わった時点で何も書き出されていないため、丸ごと失われる。記録しながらその都度保存しているアプリなら、そのあとに何も追加されなくなるとしても、それまでに保存できていた分は残る。
カメラなど別のアプリに切り替えることも、強制終了と同じように GPS の記録を止める?
止めない。アプリの切り替えは記録アプリをバックグラウンドに回すだけで、終了はさせないので、裏側で記録は続く。プロセスそのものを終わらせるのは強制終了だけだ。

自分のルートを記録する

TrailCam は iPhone 用の GPS ルート記録アプリです。動画・写真・音声メモを撮ったその地点に紐づけて保存し、GPX 1.1 または CSV で書き出せます。ダウンロードは無料です。

App Store でダウンロード