Skypeの更新テキストには次のものが含まれます。
予期せずシャットダウンした場合、アプリは自動的に再起動します
SDKを介してそれを実行するにはどうすればよいですか?
私の知る限り、ある種のアプリはバックグラウンドで実行でき、特定の場合には再起動できます。これはAppleドキュメントからのものです
このサービスを開始し、その後アプリケーションが終了した場合、新しいイベントが到着すると、システムは自動的にアプリケーションをバックグラウンドで再起動します。このような場合、アプリケーションデリゲートのapplication:didFinishLaunchingWithOptions:メソッドに渡されるオプションディクショナリには、ロケーションイベントが原因でアプリケーションが起動されたことを示すキーUIApplicationLaunchOptionsLocationKeyが含まれています。
私の意見は次のとおりです。Skypeはリモート通知メカニズムで再起動されます。
アップデート
さて、何か見つけたと思います。@Malek_Jundiは半分正しかった。アプリはゼロ以外の終了コードで失敗するはずですが、VoIPアプリケーションとして登録する必要があります。
VoIPアプリケーションは着信コールを受信するために実行を継続する必要があるため、システムがゼロ以外の終了コードで終了した場合、システムはアプリケーションを自動的に再起動します。(これは、メモリ不足が発生し、結果としてアプリケーションが終了した場合に発生する可能性があります。)ただし、アプリケーションを終了すると、VoIPサービス接続の維持に使用されるソケットを含むすべてのソケットも解放されます。したがって、アプリケーションを起動するときは、常に最初からソケットを作成する必要があります。
Skypeはまさにこれを行います:
Skypeの内容はわかりませんが、残念ながら、アプリを再起動する方法はありません。それでも、アプリを終了/終了する方法はありません。(終了については、このリンクセクション「プログラムで終了しないでください」を参照してください)
私が知る限り、アプリを再起動することはできません..を使用してアプリを強制終了することはできますexit(1);
が、これはAppleによって許可されておらず、拒否されます。mainViewControllerからいくつかのビューを削除して再度追加し、データとコンテンツをリセットすることで回避策を実行するかもしれませんが、実際に再起動することはないと思います。
問題は、なぜそれをしたいのかということです。答えが「iPadキオスク」で実行するアプリを作成したいので、クラッシュした場合はアプリを自動的に再起動する必要があります。 iPadを「キオスクモード」にすると、クラッシュした場合にOSが自動的にアプリを再起動します。
を見てみましょう:
http://www.webascender.com/Blog/ID/447/How-to-Setup-Kiosk-Mode-Lock-Your-iPad-to-Just-One-App
乾杯、