2012-02-01 7 views
3

私は定期的にいくつかのデータをダウンロードするアプリを持っています(現在はnstimerを使用しています)。私のアプリを起動せずにiOSでこれを定期的に行うことは可能ですか?iOSのバックグラウンド同期はアプリの起動なしで可能ですか?

+2

ユーザーがアプリを起動しない場合、なぜデータをダウンロードするのですか? –

+0

alredyがデータを持っていれば、アプリケーションはより速く起動します。 – DixieFlatline

+1

バックグラウンドスレッドでデータを取得し、ユーザーインターフェイスを更新する。 – JeremyP

答えて

4

いいえ、できません。あなたはサービスのようなアプリを扱うことはできません。

これを実行する唯一の方法は、アプリが起動して実行されている場合です。

いくつかのアプリは、バックグラウンド(ユーザーが起動してからホームボタンを押したなど)で実行することが許可されていますが、情報のためにオーディオアプリのように設定する必要があります。

<key>UIBackgroundModes</key><array><string>audio</string></array>

とaudioSessionは(IE用の曲を、演奏)アクティブであることを確認してください:あなたはこれを追加PLIST。とにかく、私は前述の方法をお勧めしません。私は古典的な方法で、バックグラウンドスレッドでダウンロードを実行します。

2

不可能です。アプリケーションを起動する必要があります。

1

いいえ、不可能です。 iOSでは、開発者が(VoIPなどの例外を除いて)バックグラウンドでコードを実行することも、アプリケーションを起動することもできません。

+0

たとえば、エンタープライズアプリケーションにこのような大きな制限がある場合、AppleがiOSをどのように配置するかを知ることはできません... –

5

非常に特殊なケースでは、可能です。私が話している非常に特殊なケースは、雑誌や新聞アプリの場合です。これにより、ニューススタンドキットを使用して新しい問題をバックグラウンドでダウンロードできるため、ユーザーはダウンロードを待つことなく新しいエディションを入手できます。

0

これはiCloudを使用していくらか可能とは言えますか? iCloudに特化したプログラミングは実際に行っていませんが、保存されたゲームが自動的に同期するゲームがいくつかあります。私は、ゲームを開始した後、上記セーブゲームをロードするだけです。

関連する問題