ユーザーがフォームを送信するときに1つの要件があります。フォームを編集するには30分の時間差をユーザに与えなければならない。彼が30分の時間間隔でフォームを編集しない場合、アプリケーションが実行されていなくてもフォームは自動的に送信されます。アプリがまったく動いていないときにサービスコールをすることはできますか?はいの場合は、これを行う方法。助けてください。アプリケーションが実行されていないときにサービスコールを行うiOS
答えて
Jasmeetの回答を拡大するには、サーバーを変更する必要があります。最新のapplicationDidEnterBackground:
でフォームを提出する必要がありますが、アプリをクラッシュさせたり、電話が切れてしまうことがありますので、バックグラウンドに入ることはありません。編集が行われている場合は、フォームを再度送信します。 30分が経過すると(サーバーによって測定されるように)、サーバーはフォームを受け入れます。要求にタイムスタンプ情報を含めると、フォームが最後に編集された時刻をサーバーが認識するようになります。
デバイス上の任意の時刻にコードを実行する方法はありません。サーバーコードを変更する必要がありますが、この問題を解決することはできません。 (たとえ、デバイス上の任意の時間にコードを実行する方法があっても、30分後にデバイスをオンにしたり、ネットワークにアクセスできないため、問題は解決しません)。
何らかの理由でサーバーを変更すると、要件を変更する必要があります。これはあなたがそれを記述するときに解決することはできません。
バックグラウンドでフォームを送信する場合は、アプリがバックグラウンドで一時停止されている場合、フォームが送信しない可能性があります。
最初にフォームを送信できます.30分以内にフォームを編集した場合は、フォームを再送信できます。
バックグラウンドモードを有効にしてアプリケーションを送信し、バックグラウンドモードのサポートが有効になっていないAppleのガイドラインなしで作業を処理する場合。あなたのアプリは拒否されます。 appdidenterバックグラウンドコールの処理を開始する前に、バックグラウンドモードのサポートガイドラインを確認してください。ユーザーにデータの入力を促すことができますが、自動保存ではなく自動送信し、次回にフォームを復元してすぐにユーザーエクスペリエンスを向上させることができます。
Appleのバックグラウンドモードのガイドライン。
2.5.4 Multitasking apps may only use background services for their
intended purposes: VoIP, audio playback, location, task completion,
local notifications, etc. If your app uses location background mode,
include a reminder that doing so may dramatically decrease battery
life.
- 1. アプリケーションが実行されていないときにBroadcastReceiver
- 2. アプリが実行されていないときのiOSバックグラウンドモード?
- 3. アプリケーションが実行されていないときのIphoneオーディオアラート?
- 4. アプリケーションが実行されていないときのリモートプッシュ通知
- 5. アプリケーションが実行されていないときのBLE通知
- 6. スクリプトがアプリケーションによって実行されたときにbashスクリプトのSSHコマンドが実行されない
- 7. Swift-iOSプログラムが実行されない
- 8. インターフェイスビルダーで表示されているが、実行中のアプリケーションにIOSイメージアセットが表示されていない
- 9. vbaブロックが実行されていないときに実行する
- 10. ユニティネットワーキング - [コマンド]機能が実行されていないときに実行する
- 11. アプリケーションが実行されていないときに、バックグラウンドでSyncAdapterを実行します。
- 12. C#アプリケーションが実行されない
- 13. サービスでアプリケーションが実行されない
- 14. アプリケーションがバックグラウンドモードで実行されない
- 15. Springアプリケーションが実行されない
- 16. pyqt4 guiアプリケーションが実行されない
- 17. インターネットに接続していないときにアプリケーションが実行されないようにする方法
- 18. アプリケーション:didFinishLaunchingWithOptions:RBAppDelegateをサブクラス化するときに実行されない
- 19. 私のSpringアプリケーションが実行されているときに、TogglzConfigファイルが使用されていない
- 20. (iOS)アプリがもう実行されていないときにすべてのローカル通知をキャンセルする
- 21. Android - タスクが実行されていないときに実行されていません
- 22. アプリケーションがバックグラウンドで配置されているときにGCDディスパッチされた操作が実行されない
- 23. didEnterRegion&didDetermineStateは、iBeaconなしでジオフェンシングを実装しているときにアプリケーションが実行されていないときに呼び出されない
- 24. 言語を変更して新しいサービスコールを行うとき
- 25. 私はアプリケーションがAndroidで実行されていないときにonMessageReceived(FCM)でアクティビティ/アプリケーションを開始したい
- 26. ページがロードされていないときにJSが実行されないようにします。
- 27. アプリケーションが実行されていないときにonReceive関数のコンテキストが正常に動作しない
- 28. Windowsのサービスコールでアプリケーションが保存されているときにProgressBarボタンが表示されない
- 29. アプリが実行されていないときにBroadcastReceiverが動作しない
- 30. アプリが実行されていないときにアラームが発生しない
ありがとうRob ...私は間違いなくサーバー側の実装を見ていきます。 – User
Rob、フォームが編集されるたびに30分が経過するまでアプリがバックグラウンドに入るたびに提出することをお勧めしますか?それはクライアントによって完全に制御できないのですか? – danh
実際には、フォームが編集されるたびに「30分が経過するまで」とは関係なく、提出すると言っています。コミットする編集と結合する編集をサーバーに決定させます。より複雑な解決策として、アプリは全面的にフォアグラウンドにとどまる場合は30分後に提出することができ、バックグラウンドに入るときに積極的に提出することができます(どれくらいの時間のタイムスタンプとともに)。サーバトラフィックはそれほど少なくなりますが、クライアントコードはもっと多くなります。サーバーのトラフィックが大きな問題でない限り、私はそれを最初の方法でやっています。 –