5

エンタープライズ展開用の iOS アプリケーションを作成しています。ユースケースは、iPad のキオスク/ガイド付きアクセス モードでフォアグラウンドで実行することを意図しており、OS が実行されている限り決して閉じてはなりません (iPad は壁に取り付けられ、電源に接続されます)。ソース)。

ロック画面に移動しないように iPad を設定し、必要な IdleTimerDisable コードを挿入しました。アプリを実行するためのガイド付きアクセスをセットアップすると、アプリが起動します。

日中はすべてが魅力のように機能します。アプリをフォアグラウンドにして、iPad を 1 日中そこに置いたままにしておくことができますが、期待どおりに動作します。しかし、ある夜、何かが原因でアプリケーションが終了し、朝出勤すると iPad がホーム画面に表示されたままになります。

コンソールを開いた状態で iPad を Mac に接続したままにしているが、ログとコンソール出力を調べても、異常なことは何も明らかにならない。

例外処理とログ記録のコードも用意していますが、これらのログを確認しても、例外がスローされていないことがわかります。

動作は一貫しています。問題なく一日中アプリを開いたままにできますが、翌朝には閉じられます。ガイド付きアクセスが実行されている状態でアプリを再起動できる場合もあれば、ホーム画面でガイド付きアクセスに閉じ込められてアプリを再起動できない場合もあり、iPad を強制的に再起動する必要があります。

質問: iOS は、アプリケーションがこのように終了する原因となる何らかのクリーンアップを夜間に実行しますか? それとも、他の説明がありますか?

OS がアプリを閉じている場合、どうすればそれを回避できますか?

関連情報: Xamarin でアプリを開発しました。アプリは、アプリが開いている限り、バックグラウンド スレッドを介して REST API を継続的にポーリングします。また、アプリが現在使用されている iPad はジェイルブレイクされていませんが、この問題を回避する必要がある場合はジェイルブレイクできます。

4

0 に答える 0