1

ユーザーが最初にアプリを開いたときに、アプリの使用を開始する前に、サーバーからいくつかのコンテンツをダウンロードしてインストールする必要があります。問題は、これには Wi-Fi で約 5 分かかることです。その間、アプリはバックグラウンドに入り、ダウンロードが中断されます。

次のいずれかの方法はありますか?

  • ダウンロードの実行中に iOS アプリがバックグラウンドに入らないようにする
  • またはバックグラウンドでタスクを実行し続ける (つまり、アプリがフォアグラウンドかバックグラウンドかに関係なくタスクを実行します)

ありがとう

4

3 に答える 3

3

ユーザーがホームボタンを押すと、バックグラウンドに移動します。問題を軽減するために次の 2 つのことを行うことができますが、

  • を使用beginBackgroundTaskWithExpirationHandlerして、ダウンロードにもう少し時間を割いてください。ここで読むことができます。
  • で、デバイスがアイドル状態にならないようにしてください[UIApplication sharedApplication].idleTimerDisabled = YES;。詳細については、こちらをご覧ください。

いずれにせよ、あなたができる最善のことは、これは重要なダウンロードであり、アプリケーションを終了してはならないことをユーザーに伝えることです。

于 2012-11-15T10:15:33.670 に答える
0

この状況では、やりたいことができません。1 つの方法は、アプリがアクティブになった (フォアグラウンド状態に戻った) ときにダウンロードを再開することです。また、接続通知を登録することを忘れないでください (Reachability クラスは、この Apple サンプル アプリhttp://developer.apple.com/library/ios/#samplecode/Reachability/Introduction/Intro.htmlからこの目的で使用できます) 。 . 幸運を!

于 2012-11-15T11:07:44.720 に答える
0

代わりに、一部またはすべてのコンテンツをアプリ バンドルに含めて、最初の実行時に変更をダウンロードすることはできませんか?

これが最初のユーザー エクスペリエンスとして優れているとは思えず、このような App Store のレビューに合格しない可能性があります。

バックグラウンドでのダウンロードが許可されている唯一のサードパーティ製アプリはニューススタンド アプリで、問題のコンテンツを読み込んでおり、Apple はニューススタンド アプリとして何を許可するかについてかなり厳格です。

于 2012-11-15T10:56:34.340 に答える